1 、产生10 个1 - 100 的随机数,并放到一个数组中,
把数组中大于等于10 的数字放到一个list集合中,并打印到控制台。
public static void main ( String [ ] args) {
int [ ] str = new int [ 10 ] ;
List < Integer > list= new ArrayList < > ( ) ;
for ( int i = 0 ; i < str. length; i++ ) {
str[ i] = ( int ) ( Math . random ( ) * 100 + 1 ) ;
if ( str[ i] > 10 )
list. add ( str[ i] ) ;
}
System . out. println ( list) ;
}
2 、已知数组存放一批QQ号码,QQ号码最长为11 位,最短为5 位
String [ ] strs = { "12345" , "67891" , "12347809933" , "98765432102" , "67891" , "12347809933" } 。
将该数组里面的所有qq号都存放在LinkedList 中,将list中重复元素删除,
将list中所有元素分别用迭代器和增强for 循环打印出来。
String [ ] strs = { "12345" , "67891" , "12347809933"
, "98765432102" , "67891" , "12347809933" } ;
List < String > list= new ArrayList < > ( ) ;
for ( int i = 0 ; i < strs. length; i++ ) {
list. add ( strs[ i] ) ;
}
for ( int i = 0 ; i < list. size ( ) ; i++ ) {
for ( int j = list. size ( ) - 1 ; j > i ; j-- ) {
if ( list. get ( i) == list. get ( j) )
list. remove ( j) ;
}
}
Iterator it = list. iterator ( ) ;
while ( it. hasNext ( ) ) {
Object next = it. next ( ) ;
System . out. print ( next+ " " ) ;
}
for ( Object o: list) {
System . out. println ( o) ;
}
3 、用Comparable 接口对下列四位同学的成绩做降序排序,如果成绩一样,那在成绩排序的基础上按照年龄由小到大排序。
提示:
编写一个Student 类用来实现Comparable < Student > 接口, 并在其中重写CompareTo ( Student o) 方法
public static void main ( String [ ] args) {
List < Student > list = new ArrayList < > ( ) ;
list. add ( new Student ( "liusan" , 20 , 90.0F ) ) ;
list. add ( new Student ( "lisi" , 22 , 90.0F ) ) ;
list. add ( new Student ( "wangwu" , 20 , 99.0F ) ) ;
list. add ( new Student ( "sunliu" , 22 , 100.0F ) ) ;
TreeSet < Student > tr = new TreeSet < > ( ) ;
tr. addAll ( list) ;
Iterator < Student > it = tr. iterator ( ) ;
while ( it. hasNext ( ) ) {
Student st = it. next ( ) ;
System . out. println ( st) ;
}
}
}
class Student implements Comparable < com. MyTest. day03. Student> {
String name;
int age;
float score;
public Student ( String name, int age, float score) {
this . name = name;
this . age = age;
this . score = score;
}
@Override
public String toString ( ) {
return this . name + "[" + this . age + "]:" + this . score;
}
@Override
public int compareTo ( Student o) {
if ( this . score== o. score)
{
return this . age- o. age;
}
return ( int ) ( o. score- this . score) ;
}
}
4 、现在有一个map集合如下:
Map < Integer , String > map = new HashMap < Integer , String > ( ) ;
map. put ( 1 , "张三丰" ) ;
map. put ( 2 , "周芷若" ) ;
map. put ( 3 , "汪峰" ) ;
map. put ( 4 , "灭绝师太" ) ;
要求:
1. 遍历集合,并将序号与对应人名打印。
2. 向该map集合中插入一个编码为5 姓名为李晓红的信息
3. 移除该map中的编号为1 的信息
4. 将map集合中编号为2 的姓名信息修改为"周林"
public static void main ( String [ ] args) {
Map < Integer , String > map= new HashMap < Integer , String > ( ) ;
map. put ( 1 , "张三丰" ) ;
map. put ( 2 , "周芷若" ) ;
map. put ( 3 , "汪峰" ) ;
map. put ( 4 , "灭绝师太" ) ;
Set < Integer > set= map. keySet ( ) ;
for ( int i: set
) {
System . out. println ( i+ "=" + map. get ( i) ) ;
}
map. put ( 5 , "李晓红" ) ;
map. remove ( 1 ) ;
map. put ( 2 , "周林" ) ;
}
已知有十六支男子足球队参加2020 奥运会。写一个程序,把这16 支球队随机分为4 个组。
采用List 集合和随机数
2020 奥运会男足参赛国家:
科特迪瓦,阿根廷,澳大利亚,塞尔维亚,荷兰,尼日利亚、日本,美国,中国,
新西 兰,巴西,比利时,韩国,喀麦隆,洪都拉斯,意大利
https: / / blog. csdn. net/ weixin_44796239/ article/ details/ 123692848
public static void main ( String [ ] args) {
List < String > list= new ArrayList < > ( ) ;
List < String > list2= new ArrayList < > ( ) ;
String [ ] str= { "科特迪瓦" , "阿根廷" , "澳大利亚" , "塞尔维亚" , "荷兰" , "尼日利亚" , "日本" , "美国" , "中国" ,
"新西兰" , "巴西" , "比利时" , "韩国" , "喀麦隆" "洪都拉斯" , "意大利" } ;
for ( int i = 0 ; i < str. length; i++ ) {
list. add ( str[ i] ) ;
}
}