Java Day 16

基本数据类型包装类
 Integer.MAX_VALUE
 
 Integer.parseInt();

intValue();

valueOf();

自动装拆箱
 如果是一个字节范围,数据共享

字符串中 数值排序
 "20 23 4 5 6 -8 0 88"

 1 package com.company;
 2
 3 import java.util.Arrays;
 4 import java.util.Objects;
 5
 6 /**
 7  * Created by junius on 2016/10/2.
 8  * 1、将字符串变成字符串数组
 9  * 2、将字符数组变成int数组
10  * 3、对int数组进行排序
11  * 4、将排序后的数组变成字符串数组
12  */
13 public class Test001 {
14     private static final String space_string=" ";
15     public static void main(String[] args) {
16
17         String numStr = "20 23 4 5 6 -8  0 88";
18         System.out.println(numStr);
19         numStr = sortStringNumber(numStr);
20         System.out.println(numStr);
21     }
22
23     public static String sortStringNumber(String numStr) {
24         String[] str_arr = stringToArray(numStr);
25         int[] num_arr = stringToInt(str_arr);
26         mySort(num_arr);
27         String temp = arrayToString(num_arr);
28         return temp;
29     }
30
31     public static String arrayToString(int[] num_arr) {
32         StringBuilder sb = new StringBuilder();
33         for (int i = 0; i <num_arr.length ; i++) {
34             if(i!=num_arr.length-1){
35                 sb.append(num_arr[i]+space_string);
36             }else {
37                 sb.append(num_arr[i]);
38             }
39         }
40         return sb.toString();
41     }
42
43     public static void mySort(int[] num_arr) {
44         Arrays.sort(num_arr);
45     }
46
47     public static int[] stringToInt(String[] str_arr) {
48         int[] num_arr =  new int[str_arr.length];
49         for (int i = 0; i <str_arr.length; i++) {
50             num_arr[i] =Integer.parseInt(str_arr[i]);
51         }
52         return num_arr;
53     }
54
55     private static String[] stringToArray(String numStr) {
56         return numStr.split(space_string+"+");
57     }
58
59
60 }

集合类
 对象封装特有数据,对象多了就需要容器
 1、存储对象
 2、长度可变
 3、不存储基本数据类型

1、添加
2、删除
3、判断
4、获取

迭代器
 
list set
 List 有序 重复
 Set  不重复 无序

List方法
 add
 remove
 set
 get
 index
 lastIndexOf

ListIterator
 Iterator局限性 在迭代器过程中,不要使用集合操作元素

 1 public class ListDemo {
 2     public static void main(String[] args){
 3         List list = new ArrayList();
 4         list.add("abc1");
 5         list.add("abc2");
 6         list.add("abc3");
 7         list.add("abc4");
 8
 9         ListIterator it = list.listIterator();
10         while(it.hasNext()){
11             Object obj = it.next();
12             if(obj.equals("abc2")){
13                 it.set("abc9");
14             }else
15                 System.out.println("next:"+obj);
16         }
17         System.out.println(list);
18     }
19 }

List
 Vector    --内部是数组数据结构 是同步
 ArrayList --不同步,内部是数组数据结构
 LinkedList--内部是链表数据结构,非同步,增删元素的速度很快

时间: 2024-10-27 04:53:26

Java Day 16的相关文章

老白的JAVA课程16 卡片布局 javaBean

基于组件的开发 javaBean 组成部件 规范   1: 必须要有一个公共的构造方法,javaBean这个类也必须是公共的   2:javaBean中的属性都是私有的,每一个属性都必须提供符合命名规范的set和get方法   3:应该是可序列化的,但是并不是必须的 类型:  1:简单属性javabean  set和get足够简单  2:绑定属性JavaBean  属性复杂,需要绑定其他属性  3:约束属性JavaBean  set和get方法有约束 cardlayout.show(父容器,按钮

java byte 16进制转换

整型转16进制: int devIdInt = Integer.parseInt(devId); String devIdString = Integer.toHexString(devIdInt); 16进制转为字节: byte devBin = (byte) Integer.parseInt(devIdString, 16); byte devBin =Integer.valueOf(devIdString, 16).byteValue(); byte devBin =Byte.parseB

Java笔记(16):集合框架(02)

1.ArrayList存储字符串并遍历 1 package cn.itcast_01; 2 3 import java.util.ArrayList; 4 import java.util.Iterator; 5 6 /* 7 * List的子类特点: 8 * ArrayList: 9 * 底层数据结构是数组,查询快,增删慢 10 * 线程不安全,效率高 11 * Vector: 12 * 底层数据结构是数组,查询快,增删慢 13 * 线程安全,效率低 14 * LinkedList: 15 *

Java基础16:Java多线程基础最全总结

Java基础16:Java多线程基础最全总结 Java中的线程 Java之父对线程的定义是: 线程是一个独立执行的调用序列,同一个进程的线程在同一时刻共享一些系统资源(比如文件句柄等)也能访问同一个进程所创建的对象资源(内存资源).java.lang.Thread对象负责统计和控制这种行为. 每个程序都至少拥有一个线程-即作为Java虚拟机(JVM)启动参数运行在主类main方法的线程.在Java虚拟机初始化过程中也可能启动其他的后台线程.这种线程的数目和种类因JVM的实现而异.然而所有用户级线

黑马程序员——java学习16(毕25)——正则表达式

正则表达式 符合一定规则的表达式 作用:专门用于操作字符串 特点:用于一些特定的符号来表示一些代码操作,这样就简化书写 好处:可以简化对字符串的复杂操作 具体操作功能: 1.匹配: public boolean matches(String regex) 参数 regex - 用来匹配此字符串的正则表达式 2.切割   String[] split(String  regex) 根据给定正则表达式的匹配拆分此字符串. 3.替换 String  replaceAll(String  regex ,

黑马程序员——java学习16(张孝祥)——反射

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 反射机制 在运行状态中,对于任意一个类,能知道它全部的方法和属性, 对于任意一个对象,能能够调用它的任意一个方法和属性 就是把java类中的各种成分映射成相应的java类 反射的基础Class Class类的实例对象就是字节码,就是那个类被编译后形成的二进制数据代码 获取对象的方式为三种 1.类名.class 2.对象.getClass 3.Class.forName("类名") 1

Java面向对象16种原则

一   类的设计原则   1 依赖倒置原则-Dependency Inversion Principle (DIP) 2 里氏替换原则-Liskov Substitution Principle (LSP) 3 接口分隔原则-Interface Segregation Principle (ISP) 4 单一职责原则-Single Responsibility Principle (SRP) 5 开闭原则-The Open-Closed Principle (OCP) 二  包的设计原则   6

学习java第16天个人总结

Day16个人总结 一.TreeMap集合 1.概念: TreeMap集合是有序的,由于是有序的所以可能通过类重写Comparable接口中的comparaTo(),方法对集合进行排序,并且去除重复,同时TreeMap集合和TreeSet集合类似可以使用定制排序通过新建定制排序比较器来进行定制排序. 2.使用如下: TreeMap<K,V>,<>泛型中的K代表key值V代表Value值,key值是唯一的不可重复的,value值是可以重复的. 实现Comparable接口中的comp

Java [leetcode 16] 3Sum Closest

题目描述: Given an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each input would have exactly one solution. For example, given array S =