1、定義一個方法 listTest(ArrayList list, String name),要求回傳 name 在 list 里面第一次出 現的索引,如果 name 沒出現過回傳-1,
2、已知陣列存放一批 QQ 號碼,長度 5-11 位, String[] strs = {“10001”,“10086”,“12347806666”,“45612378901”,“10001”,“12347806666”}, 將該陣列里面的所有 qq 號都存放在 LinkedList 中,將 list 中重復元素洗掉,將 list 中所有元素分別用迭代器和增強 for 回圈列印出來,
3、請隨機生成一注雙色球號碼,(要求同色號碼不重復),雙色球規則:雙色球每注投注號碼由 6 個紅色 球號碼和 1 個藍色球號碼組成,紅色球號碼從 1—33 中選擇;藍色球號碼從 1—16 中選擇;
4、分別用 Comparable 和 Comparator 兩個介面對下列四位同學的成績做降序排序,如果成績一樣,那在 成績排序的基礎上按照年齡由小到大排序,

代碼如下:
1.
public class ListTestDemo {
public static void main(String[] args) {
ArrayList<String> nameDirectory = new ArrayList<>();
nameDirectory.add("張三");
nameDirectory.add("李四");
nameDirectory.add("王五");
nameDirectory.add("劉六");
while(true){
System.out.println("=======名字檢索系統=======");
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
int index = listTest(nameDirectory,input);
if(index == -1){
System.out.println(input + "不在該鏈表中");
}else{
System.out.println(input + "的index為" + index);
}
}
}
public static int listTest(ArrayList<String> list, String name){
int len = list.size();
for(int i = 0; i < len; i++){
if(list.get(i).equals(name)){
return i;
}
}
return -1;
}
}
2.
public class RemoveRepeat {
public static void main(String[] args) {
String[] strs = {"10001", "10086", "12347806666", "45612378901", "10001", "12347806666"};
LinkedList<String> list = getList(strs);
//增強型for回圈
System.out.println("------增強型for回圈------");
for(String i : list){
System.out.println(i);
}
//迭代器
System.out.println("---------迭代器---------");
Iterator<String> iterator = list.iterator();
while(iterator.hasNext()){
String s = iterator.next();
System.out.println(s);
}
}
public static LinkedList<String> getList(String[] strs){
LinkedList<String> list = new LinkedList<String>();
for(int i=0; i<strs.length; i++){
if(list.contains(strs[i])){
continue;
}
list.add(strs[i]);
}
return list;
}
}
3
public class BallNumber {
public static void main(String[] args) {
while(true){
menu();
}
}
public static int menu(){
System.out.println("======歡迎來到雙色球游戲======");
System.out.println("請輸入相應編號繼續游戲:");
System.out.println("1-開始游戲 2-退出游戲");
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
int num = -1;
try{
num = Integer.parseInt(input);
}catch(NumberFormatException e){
System.out.println("請輸入數字");
return menu();
}
if(num < 1 || num > 2){
System.out.println("請輸入正確的數字");
return menu();
}
if(num == 1){
getball();
}else{
System.exit(1);
}
return -1;
}
public static void getball(){
System.out.println("正在生成一注雙色球號碼...");
System.out.println("生成成功!");
System.out.println("紅色球號碼為:");
LinkedList<Integer> redBall = getRedBall();
for(Integer i : redBall){
System.out.print(i);
System.out.print('\t');
}
System.out.println();//換行
System.out.println("藍色球號碼為:");
int blueNum = getBlueBall();
System.out.println(blueNum);
}
public static LinkedList<Integer> getRedBall(){
LinkedList<Integer> red = new LinkedList<>();
Random random = new Random();
while(red.size() < 6){
int code = (int)(1 + Math.random() * 33);
if(red.contains(code)){
continue;
}
red.add(code);
}
return red;
}
public static int getBlueBall(){
Random random = new Random();
return (int)(1 + Math.random() * 16);
}
}
4
public class compareTest {
public static void main(String[] args) {
Student s1 = new Student("賈寶玉",14,88.5);
Student s2 = new Student("林黛玉",13,90.5);
Student s3 = new Student("史湘云",13,85.5);
Student s4 = new Student("薛寶釵",15,91.0);
Student s5 = new Student("工具人",15,88.5);
ArrayList<Student> studentList = new ArrayList<>();
studentList.add(s1);
studentList.add(s2);
studentList.add(s3);
studentList.add(s4);
studentList.add(s5);
System.out.println("--------comparable實作方法--------");
System.out.println("原來的順序");
for(Student s : studentList){
System.out.println(s);
}
System.out.println("--------------"+'\n' + "現在的順序:");
Collections.sort(studentList);
for(Student s : studentList){
System.out.println(s);
}
System.out.println("--------comparator實作方法--------");
System.out.println("原來的順序");
for(Student s : studentList){
System.out.println(s);
}
System.out.println("--------------"+'\n' + "現在的順序:");
Collections.sort(studentList,new comparator());
for(Student s : studentList){
System.out.println(s);
}
}
static class Student implements Comparable<Student>{
private String name;
private int age;
private double points;
public Student(String name, int age, double points) {
this.name = name;
this.age = age;
this.points = points;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
", points=" + points +
'}';
}
@Override
public int compareTo(Student o) {
if(o.points == this.points){
return this.age - o.age;
}
if(o.points - this.points > 0){
return 1;
}else if(o.points - this.points < 0){
return -1;
}else{
return 0;
}
}
}
static class comparator implements Comparator<Student> {
@Override
public int compare(Student o1, Student o2) {
if(o1.points == o2.points){
return o1.age - o2.age;
}
if(o1.points - o2.points > 0){
return -1;
}else if(o1.points - o2.points < 0){
return 1;
}else{
return 0;
}
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/266989.html
標籤:其他
下一篇:16. FizzBuzz
