當前位置:編程學習大全網 - 編程語言 - java 編程實現接收鍵盤輸入任意多個整數,並以逗號分開,然後選擇數組排重或隨機打亂。返回排序輸

java 編程實現接收鍵盤輸入任意多個整數,並以逗號分開,然後選擇數組排重或隨機打亂。返回排序輸

//?回答完畢,采納即可

import?java.io.FileWriter;

import?java.io.IOException;

import?java.util.Arrays;

import?java.util.Comparator;

import?java.util.Scanner;

public?class?Drinks

{

public?static?final?int?REMOVE?=?1;

public?static?final?int?RANDOM?=?2;

public?static?final?String?FILE?=?"asd.txt";

public?static?final?String?LINE?=?System.getProperty("line.separator");

private?static?String[]?remove(String[]?array)

{

String[]?result?=?new?String[0];

String?tmp?=?",";

for(int?i?=?0;?i?<?array.length;?i++)

{

String?one?=?array[i];

if(tmp.indexOf(","?+?one?+?",")?==?-1)

{

String[]?cloned?=?new?String[result.length?+?1];

System.arraycopy(result,?0,?cloned,?0,?result.length);

cloned[cloned.length?-?1]?=?one;

result?=?cloned;

tmp?+=?one?+?",";

}

}

return?result;

}

private?static?void?random(String[]?array)

{

Arrays.sort(array,?new?Comparator<String>()

{

@Override

public?int?compare(String?o1,?String?o2)

{

double?rand?=?Math.random();

if(rand?<?0.5)

{

return?1;

}

return?-1;

}

});

}

private?static?int?writeFile(String?data,?String?file,?boolean?isAppend)

{

int?code?=?1;

try

{

FileWriter?fw?=?new?FileWriter(file,?isAppend);

fw.write(data);

fw.flush();

fw.close();

}

catch(IOException?e)

{

code?=?-1;

}

return?code;

}

public?static?void?main(String[]?args)

{

Scanner?scanner?=?new?Scanner(System.in);

int?step?=?1;

String?line?=?"";

String?choosed;

loop:?while(true)

{

if(step?==?1)

{

System.out.print("輸入任意多個整數,並以逗號分開:");

line?=?scanner.nextLine().trim();

if(!line.matches("^\\d+([,,]\\d+)+$"))

{

continue;

}

step?=?2;

}

else?if(step?==?2)

{

System.out.print("請選擇:1.數組排重?2.隨機打亂:");

choosed?=?scanner.nextLine().trim();

if(!choosed.matches("^[12]$"))

{

System.out.println("輸入錯誤!");

continue;

}

else

{

System.out.print("妳的選擇是:"?+?choosed);

String[]?array?=?line.split("[,,]");

String?data;

int?code;

String?regex?=?"[\\[\\]]";

switch(Integer.parseInt(choosed))

{

case?REMOVE:

String[]?result?=?remove(array);

data?=?Arrays.toString(result).replaceAll(regex,?"")?+?LINE;

System.out.println("操作結果:?"?+?data);

code?=?writeFile(data,?FILE,?true);

if(code?==?1)

{

System.out.println("成功寫入文件");

}

else

{

System.out.println("失敗寫入文件");

}

break;

case?RANDOM:

random(array);

data?=?Arrays.toString(array).replaceAll(regex,?"")?+?LINE;

System.out.println("操作結果:?"?+?data);

code?=?writeFile(data,?FILE,?true);

if(code?==?1)

{

System.out.println("成功寫入文件");

}

else

{

System.out.println("失敗寫入文件");

}

break;

default:

break;

}

while(true)

{

System.out.println("是否繼續?繼續按3,退出按4");

line?=?scanner.nextLine().trim();

if("3".equals(line))

{

step?=?1;

continue?loop;

}

else?if("4".equals(line))

{

scanner.close();

break?loop;

}

else

{

continue;

}

}

}

}

}

}

}

  • 上一篇:我想養壹只小狗寫作文。
  • 下一篇:電子簡歷文檔格式10篇
  • copyright 2024編程學習大全網