A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

顶一下下哦。。。。。
回复 使用道具 举报
拿题来了啊。  我要技术分 ,哈哈
回复 使用道具 举报
过期了。。。。

1.jpg (85.72 KB, 下载次数: 6)

1.jpg

JavaList.rar

1.17 KB, 阅读权限: 200, 下载次数: 1

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
知足 发表于 2014-12-10 09:46
过期了。。。。

不错
  1. package org.it.heima;

  2. import java.util.ArrayList;
  3. import java.util.List;

  4. public class JavaList {

  5.         /**
  6.          * listA中有"1234"、"2456"、"3654"、"4765"、"5324"、
  7.          *                         "6098"、"7890"、"1091"、"2670"
  8.          * listB中有"1、2、3、4、5、6、7、1、2"
  9.          * 将A拆分成单独数字字符串,保存在A中
  10.          * 1)给listA、listB分别去重、
  11.          * 2)创建listC,将A、B中相同的对象存到C中
  12.          * 3)listC中对象按数字倒序排列并输出
  13.          * */
  14.         public static void main(String[] arg){
  15.                 List<String> listA = new ArrayList<String>();
  16.                 List<String> listB = new ArrayList<String>();
  17.                 List<String> listC = new ArrayList<String>();
  18.                
  19.                 listA.add("1234");
  20.                 listA.add("2456");
  21.                 listA.add("3654");
  22.                 listA.add("4765");
  23.                 listA.add("5324");
  24.                 listA.add("6098");
  25.                 listA.add("7890");
  26.                 listA.add("1091");
  27.                 listA.add("2670");
  28.                
  29.                 listB.add("1");
  30.                 listB.add("2");
  31.                 listB.add("3");
  32.                 listB.add("4");
  33.                 listB.add("5");
  34.                 listB.add("6");
  35.                 listB.add("7");
  36.                 listB.add("1");
  37.                 listB.add("2");
  38.                
  39.                 //A拆分
  40.                 listA = JavaList.splitList(listA);
  41.                 System.out.print("A拆分:");
  42.                 for(String str:listA){
  43.                         System.out.print(str + "-");
  44.                 }
  45.                 System.out.println();
  46.                
  47.                 //A去重
  48.                 listA = JavaList.removeRepeat(listA);
  49.                 System.out.print("A去重:");
  50.                 for(String str:listA){
  51.                         System.out.print(str + "-");
  52.                 }
  53.                 System.out.println();
  54.                
  55.                 //B去重
  56.                 listB = JavaList.removeRepeat(listB);
  57.                 System.out.print("B去重:");
  58.                 for(String str:listB){
  59.                         System.out.print(str + "-");
  60.                 }
  61.                 System.out.println();
  62.                
  63.                 //将A、B相同的对象存到C中
  64.                 listC = JavaList.getSameObj(listA, listB);
  65.                 System.out.print("A、B相同对象:");
  66.                 for(String str:listC){
  67.                         System.out.print(str + "-");
  68.                 }
  69.                 System.out.println();
  70.                
  71.                 //将C中对象倒序
  72.                 listC = JavaList.sortListDesc(listC);
  73.                 System.out.print("C倒序输出:");
  74.                 for(String str:listC){
  75.                         System.out.print(str + "-");
  76.                 }
  77.         }
  78.        
  79.         //拆分函数
  80.         public static List<String> splitList(List<String> list){
  81.                 int i;
  82.                 List<String> listTemp = new ArrayList<String>();
  83.                 for(String str1:list){
  84.                         int len = str1.length();
  85.                         if(len == 1)
  86.                                 break;
  87.                         for(i=0;i<len;i++){
  88.                                 String strtemp = str1.substring(i, i+1);
  89.                                 listTemp.add(strtemp);
  90.                         }
  91.                 }
  92.                 return listTemp;
  93.         }
  94.        
  95.         //去重函数
  96.         public static List<String> removeRepeat(List<String> list){
  97.                 int arrSize = list.size();
  98.                 int[] arr = new int[arrSize];
  99.                 List<String> listTemp = new ArrayList<String>();
  100.                 int i=0;
  101.                
  102.                 for(String str:list){
  103.                         arr[i] = Integer.parseInt(str);
  104.                         i++;
  105.                 }
  106.                 //去重
  107.                 for(i=0;i<arrSize;i++){
  108.                         if(i==(arrSize-1))
  109.                                 listTemp.add(String.valueOf(arr[i]));
  110.                         for(int j=i+1;j<arrSize;j++){
  111.                                 if(arr[i]==arr[j]){
  112.                                         break;
  113.                                 }else if(j==(arrSize-1)){
  114.                                         listTemp.add(String.valueOf(arr[i]));
  115.                                 }
  116.                         }
  117.                 }
  118.                 return listTemp;
  119.         }
  120.        
  121.         //将两个列表中相同的对象存到第三个列表中
  122.         public static List<String> getSameObj(List<String> listA,List<String> listB){
  123.                 List<String> listC = new ArrayList<String>();
  124.                 for(String strA : listA){
  125.                         for(String strB : listB){
  126.                                 if(strA.equals(strB)){
  127.                                         listC.add(strA);
  128.                                 }
  129.                         }
  130.                 }
  131.                 return listC;
  132.         }
  133.        
  134.         //列表倒序排序
  135.         public static List<String> sortListDesc(List<String> list){
  136.                 int arrSize = list.size();
  137.                 int[] arr = new int[arrSize];
  138.                 List<String> listTemp = new ArrayList<String>();
  139.                 int i = 0;
  140.                
  141.                 for(String str:list){
  142.                         arr[i] = Integer.parseInt(str);
  143.                         i++;
  144.                 }
  145.                
  146.                 int bound,exchange = arrSize - 1;
  147.                 while(exchange!=0){
  148.                         bound = exchange;
  149.                         exchange = 0;
  150.                         for(int j=0;j<bound;j++){
  151.                                 if(arr[j]<arr[j+1]){
  152.                                         arr[j] = arr[j] + arr[j+1];
  153.                                         arr[j+1] = arr[j] - arr[j+1];
  154.                                         arr[j] = arr[j] - arr[j+1];
  155.                                         exchange = j;
  156.                                 }
  157.                         }
  158.                 }
  159.                
  160.                 for(i=0;i<arrSize;i++){
  161.                         listTemp.add(String.valueOf(arr[i]));
  162.                 }
  163.                
  164.                 return listTemp;
  165.         }
  166. }
复制代码
回复 使用道具 举报
路过看看。。。
回复 使用道具 举报
拿题拿分!!!
回复 使用道具 举报

RE: 【阳哥专栏】黑马程序员技术分活动第27期,奖励2技术...

阳哥,题目我做出来了。快快给分吧!

1.PNG (122.25 KB, 下载次数: 5)

1.PNG

TestArrayList.zip

2.03 KB, 阅读权限: 200, 下载次数: 1

题目源码

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
顶贴。领题
回复 使用道具 举报
领题签到看看题
回复 使用道具 举报
领回去看看
回复 使用道具 举报
看之后还得好好学习啊
回复 使用道具 举报
arui12580 来自手机 中级黑马 2014-12-12 02:44:20
312#
我来瞅瞅。估计不会。
回复 使用道具 举报
路过看看。。。
回复 使用道具 举报
路过看看。。。
回复 使用道具 举报
路过看看。。。
回复 使用道具 举报
出来了.....

无标题.jpg (91.9 KB, 下载次数: 6)

无标题.jpg

ListOperation.zip

1.11 KB, 下载次数: 9

评分

参与人数 1技术分 +1 收起 理由
王震阳老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报

不错

  1. import java.util.ArrayList;
  2. import java.util.Collections;
  3. import java.util.List;

  4. /*
  5. 题目:已知集合List<String> listA = new ArrayList<String>();
  6. listA中有“1234”,“2456”,“3654”,“4765”,“5324”,“6098”,“7890”,“1091”,“2670”对象。
  7. 已知集合List<Integer> listB = new ArrayList<Integer>();
  8. listB中有1,2,3,4,5,6,7,1,2对象。
  9. 现在请:将listA中的对象拆分成单独的数字字符串(
  10. 也就是将“1234”,拆分成“1”,“2”,“3”,“4”四个对象),
  11. 并保存在集合listA中①给listA、listB分别去重
  12. ②创建新集合List<String> listC = new ArrayList<String>();
  13. 将listA和listB中相同(字符相同则相同)的对象保存到listC
  14. ③给集合listC按照数字倒序排列,然后输出。
  15. 上传代码的时候将运算结果截图一起提交。
  16. * */
  17. public class ListOperation {

  18.         public static void print(Object obj)
  19.         {
  20.                 System.out.println(obj);
  21.         }
  22.         public static void main(String[]args)
  23.         {
  24.                 List<String> al1 = new ArrayList<String>();
  25.                 List<Integer> al2 = new ArrayList<Integer>();
  26.                 List<String> al3 = new ArrayList<String>();
  27.                 strGenerator(al1);
  28.                 intGenerator(al2);
  29.                 print("原listA集合:"+al1);
  30.                 converseFunc(al1);
  31.                 print("修改后的listA集合:"+al1);
  32.                 removeDoubleFunc(al1);
  33.                 print("去重复后的listA集合:"+al1);
  34.                 removeDoubleFunc(al2);
  35.                 print("去重复后的listB集合:"+al2);
  36.                 al3=retainDoubleFunc(al1,al2);
  37.                 print("listC集合:"+al3);
  38.                 Collections.reverse(al3);
  39.                 print("修改后的listC集合:"+al3);
  40.         }
  41.         public static void strGenerator(List<String> list)
  42.         {
  43.                 Collections.addAll(list,"1234","2456","3654","4765","5324","6098","7890","1091","2670");
  44.         }
  45.         public static void intGenerator(List<Integer>list)
  46.         {
  47.                 Collections.addAll(list, 1,2,3,4,5,6,7,1,2);
  48.         }
  49.         public static void converseFunc(List<String>list)
  50.         {
  51.                 list.clear();
  52.                 List<String> list1 = new ArrayList<String>();
  53.                 strGenerator(list1);
  54.                 for(String s:list1)
  55.                 {
  56.                         char[]arr=s.toCharArray();
  57.                         for(char c:arr)
  58.                                 list.add(Character.toString(c));
  59.                 }
  60.         }
  61.         public static <T>void removeDoubleFunc(List<T>list)
  62.         {
  63.                 ArrayList<T>al=new ArrayList<T>();
  64.                 for(T s:list)
  65.                 {
  66.                         if(!al.contains(s))
  67.                                 al.add(s);
  68.                 }
  69.                 list.clear();
  70.                 list.addAll(al);
  71.         }
  72.         public static List<String> retainDoubleFunc(List<String> list1,List<Integer>list2)
  73.         {
  74.                 ArrayList<String> al=new ArrayList<String>();
  75.                 for(int x:list2)
  76.                 {
  77.                         al.add(Integer.toString(x));
  78.                 }
  79.                 al.retainAll(list1);
  80.                 return al;
  81.         }
  82. }
复制代码
回复 使用道具 举报
过来学习学习
回复 使用道具 举报
我要领题!
回复 使用道具 举报
好难好好难
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马