java基础知识web

java基础知识web一 IO 部分 1 读写文件 字节流用于复制文件 字符流便于含有中文信息的分析文件 InputStream read read byte OutputStream write byte start length 2 包装模式 3 转换流 InputStreamR OutputStream PrintStream PrintWriter 封装 write

大家好,我是讯享网,很高兴认识大家。



一、IO部分
1、读写文件:字节流用于复制文件,字符流便于含有中文信息的分析文件
InputStream
read() read(byte[])
OutputStream
write 、write(byte[],start,length)
2、包装模式
3、转换流 InputStreamReader, OutputStreamWriter
4、PrintStream PrintWriter 封装write,重载的print和println方法
5、BufferedReaeder的readLine方法
6、File API 判断文件/目录是否存在,创建文件/目录,获得文件大小、文件删除
7、#深度优先/广度优先遍历目录

二、集合部分
1.接口关系图 think in java
Iterator <--- Collection <--- Map

        package cn.techson;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

//循环遍历map的方法
public class CollectionTest {
public static void main(String[] args) {
   Map<String, Integer> tempMap = new HashMap<String, Integer>();
   tempMap.put("a", 1);
   tempMap.put("b", 2);
   tempMap.put("c", 3);
   // JDK1.4中
   // 遍历方法一 hashmap entrySet() 遍历
   System.out.println("方法一");
   Iterator it = tempMap.entrySet().iterator();
   while (it.hasNext()) {
    Map.Entry entry = (Map.Entry) it.next();
    Object key = entry.getKey();
    Object value = entry.getValue();
    System.out.println("key=" + key + " value=" + value);
   }
   System.out.println("");
   // JDK1.5中,应用新特性For-Each循环
   // 遍历方法二
   System.out.println("方法二");
   for (Map.Entry<String, Integer> entry : tempMap.entrySet()) {
    String key = entry.getKey().toString();
    String value = entry.getValue().toString();
    System.out.println("key=" + key + " value=" + value);
   }
   System.out.println("");

   // 遍历方法三 hashmap keySet() 遍历
   System.out.println("方法三");
   for (Iterator i = tempMap.keySet().iterator(); i.hasNext();) {
    Object obj = i.next();
    System.out.println(obj);// 循环输出key
    System.out.println("key=" + obj + " value=" + tempMap.get(obj));
   }
   for (Iterator i = tempMap.values().iterator(); i.hasNext();) {
    Object obj = i.next();
    System.out.println(obj);// 循环输出value
   }
   System.out.println("");

   // 遍历方法四 treemap keySet()遍历
   System.out.println("方法四");
   for (Object o : tempMap.keySet()) {
    System.out.println("key=" + o + " value=" + tempMap.get(o));
   }
   System.out.println("11111");

   // java如何遍历Map <String, ArrayList> map = new HashMap <String,
   // ArrayList>();
   System.out
     .println("java 遍历Map <String, ArrayList> map = new HashMap <String, ArrayList>();");
   Map<String, ArrayList> map = new HashMap<String, ArrayList>();
   Set<String> keys = map.keySet();
   Iterator<String> iterator = keys.iterator();
   while (iterator.hasNext()) {
    String key = iterator.next();
    ArrayList arrayList = map.get(key);
    for (Object o : arrayList) {
     java基础知识web System.out.println(o + "遍历过程");
    }
   }
   System.out.println("2222");
   Map<String, List> mapList = new HashMap<String, List>();
   for (Map.Entry entry : mapList.entrySet()) {
    String key = entry.getKey().toString();
    List<String> values = (List) entry.getValue();
    for (String value : values) {
     System.out.println(key + " --> " + value);
    }
   }
}
}

使用EL表达式遍历Map集合

   <%

   Map map=new HashMap();

  map.put("a", "1");

  map.put("b", "2");

  map.put("c", "3");

  pageContext.setAttribute("map",map);

   %>

   <c:forEach items="${map}" var="m">

   键:${m.key}

   值:${m.value}

   </c:forEach>

使用EL表达式遍历Map集合(值存放的是对象)

<%

   Person p=new Person();

   p.setAddress("aa");

   p.setName("aa");

    Person p2=new Person();

   p2.setAddress("bb");

   p2.setName("bb");

      Person p3=new Person();

     p3.setAddress("cc");

        p3.setName("cc");

     Map map=new HashMap();

    map.put("a", p);

    map.put("b", p2);

    map.put("c", p3);

   pageContext.setAttribute("map",map);

   %>

   <c:forEach items="${map}" var="m">

   ${m.key}

   ${m.value.name}//m.value取得的是对象的内存地址,所以可以直接用m.value.name(name为Person对象的属性)

   </c:forEach>

使用struts标签<logic:iterate />遍历

<%

   List list=new ArrayList();

   list.add("aa");

   list.add("bb");

   list.add("cc");

   Map map=new HashMap();

    map.put("a", list);

    pageContext.setAttribute("map",map);

   %>

   <logic:iterate id="m" name="map">

   键:${m.key}

   <logic:iterate id="childm" name="m" property="value">内层标签的name对应的是外层标签的id,一定要加上property="value"

   值:${childm}

   </logic:iterate>

   </logic:iterate>

小讯
上一篇 2025-01-02 18:09
下一篇 2025-01-01 13:38

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/745.html