我们直接看案例如下: package cn.itcast_03; import java.util.Scanner; /* * 统计一个字符串中大写字母字符,小写字母字符,数字字符出现的次数.(不考虑其他字符) * * 分析: * A:定义三个统计变量. * int bigCont=0; * int smalCount=0; * int numberCount=0; * B:键盘录入一个字符串. * C:把字符串转换为字符数组. * D:遍历字符数组获取到每一个字符 * E:判断该字符是 * 大…
1. Arrays工具类中asList()方法的使用 public static <T> List<T> asList(T... a): 把数组转成集合 注意事项: 虽然可以把数组转成集合,但是集合的长度不能改变. 2. 代码示例: (1) package cn.itcast_03; import java.util.Arrays; import java.util.List; /* * public static <T> List<T> asList(T.…
1. Math.random()方法: Math.random()出现的数据是0.0<= x < 1.0之间,随机出现一个数据Math.random()>0.1概率是0.9 那么如下: Math.random()>0.1? 2:4  上面表示出现数字2的概率为0.9,出现数字4的概率为0.1 2. 上面出现的是两个数,如果我们案例需求是多个数,控制概率出现,该怎么办呢? 下面是一个案例: 做一个翻宝程序,通过返回数字0-5来判断中奖情况, 012345,这几个数字的出现的概率是0出…
1. ConcurrentHashMap简介: ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和Hashtable功能相同但是线程安全的方法.ConcurrentHashMap可以做到读取数据不加锁,并且其内部的结构可以让其在进行写操作的时候能够将锁的粒度保持地尽量地小,不用对整个ConcurrentHashMap加锁(实际上就是对哈希表加锁). 2. ConcurrentHashMap的内部结构: ConcurrentHashMap为了提高本身…
1. 首先我们看看统计字符串中每个字符出现的次数的案例图解: 2. 代码实现: (1)需求 :"aababcabcdabcde",获取字符串中每一个字母出现的次数要求结果:a(5)b(4)c(3)d(2)e(1) 分析:   A: 定义一个字符串(可以改进为键盘录入)   B: 定义一个TreeMap集合            键: Character            值:Integer   C: 把字符串转换为字符数组   D: 遍历字符数组,得到每一个字符   E: 拿刚才得…
1. String类的获取功能 int length() // 获取字符串中字符的个数(长度) char charAt(int index)//根据位置获取字符 int indexOf(int ch)//获取字符ch在字符串中第一次出现的位置索引 int indexOf(String str)//获取str在字符串中第一次出现的位置 int indexOf(int ch, int fromIndex)//从指定位置from查找ch第一次出现的位置索引 int indexOf(String str…
1. 基本类型包装类概述 (1)将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据. (2)常用的操作的之一:用于基本数据类型与字符串之间的转换. (3)基本类型和包装类的对应 • Byte.Short.Integer.Long.Float.Double.Character.Boolean 为了对基本数据类型进行更多的操作,更方便的操作,Java就针对每一种基本数据类型提供了对应的类类型--------包装类类型. 2. 案例引入: package cn.itcast_0…
1. Character概述: public final class Character extends Object implements Serializable,Comparable<Character> Character类在对象中包装一个基本类型char的值.Character类型的对象包含类型为char的单个字段. 此外,该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并且将字符从大写转换成小写,反之亦然. 2. Character的构造方法: Character(c…
1. String类型 ---> 其他类型 (1)使用基本类型包装类的parseXXX方法 e.g:String(字符串)转化为int(整型) String MyNumber ="1234"; int MyInt = Integer.parseInt(MyNumber); 备注字符串转换成byte, short, int, float, double, long 等数据类型,可以分别参考Byte, Short,Integer, Float, Double, Long 类的pars…
概述 公司业务需要,产品既要有.NET又需要Java,没得选择,只能业余时间学习Java,整体觉得Java也.NET还是很相似的,只是语法有差别,差别也不是很大,这就将学习Java的基础知识整理下,以便于自己的学习.作为个.NET程序猿也可以学习Java ,毕竟技多不压身,学习多也要精通. 开发工具 eclipse ,开发java类似.NET 需要装JDK类似.NET Framework. Java开发工具eclipse设置 .设置字体:window设置-Basic: .设置快捷键:window…
  一个小型网站上发布了一个称为Java“死亡竞赛”的新项目.测验发布后,超过20000位开发者参加了测验.网站以20道关于Java的多选题为主.我们得到了众多开发者的测验统计数据,今天,我们非常乐意将其中的一些数据和答案与你们分享. 我们从20个题目中得到了61872个答案,大约每个题目有3094个答案.每个Java“死亡”测验都会随机地从20个题目中抽取5个题目,然后每个题目有90秒的时间作答.每个问题有四个可能的选项.经常有人向我们抱怨说这些题目太难了.所以,我们的测验被称为Java“死亡…
一.相关概念 1. 什么是常量 用final修饰的成员变量表示常量,值一旦给定就无法改变! final修饰的变量有三种:静态变量.实例变量和局部变量,分别表示三种类型的常量. 2. Class文件中的常量池 在Class文件结构中,最头的4个字节用于存储魔数Magic Number,用于确定一个文件是否能被JVM接受:再接着4个字节用于存储版本号,前2个字节存储次版本号,后2个存储主版本号:再接着是用于存放常量的常量池,由于常量的数量是不固定的,所以常量池的入口放置一个U2类型的数据(const…
1. 基础知识: Android(java)学习笔记61:多线程程序的引入    ~    Android(java)学习笔记76:多线程-定时器概述和使用 …
数据类型转换: (1). 自动转换 低级变量可以直接转换为高级变量,这叫自动类型转换.比如: byte b: int b:  long b:  float b:   double  b: 上面的语句可以在Java中直接通过. (2).如果低级类型为char型,向高级类型(整型)转换时候,会转换为对应的ASCII码值,例如: char c ='c':  int i = c:  System.out.println("output:"+i): 输出: output:99 (3).对于byt…
常见 Java 异常解释:(译者注:非技术角度分析.阅读有风险,理解需谨慎:) 1. java.langjava.lang软件包是java语言的核心部分,它提供了java中的基础类. java.lang.Object,这是java.lang的根类,也是所有java类的超类. java.lang ArithmeticException 出现异常的运算条件时,抛出此异常.例如,一个整数"除以零" 你正在试图使用电脑解决一个自己解决不了的数学问题,请重新阅读你的算术表达式并再次尝试. Arr…
1. 把一个文件中的字符串排序后再写入另一个文件 已知s.txt文件中有这样的一个字符串:"hcexfgijkamdnoqrzstuvwybpl" 请编写程序读取数据内容,把数据排序后写入ss.txt中. 分析:  A: 把s.txt这个文件给做出来  B: 读取该文件的内容,存储到一个字符串中  C: 把字符串转换为字符数组  D: 对字符数组进行排序  E: 把排序后的字符数组转换为字符串  F: 把字符串再次写入ss.txt中 2. 代码实现: package cn.itcast…
1.对于自增运算++j与j++,由于加一的执行顺序不同,所以Java中有中间缓存变量来储存其单个表达式的值,而j的自增自减的结果依然保留在原来的变量储存区.因为本体是j的值,而单个表达式的值是中间产生的一个临时变量值,是在整条计算表达式结束后就可以抛弃的值,所以用个临时中间缓存变量在放就可以了.这就可以实现自增自减运算在计算时值的加减1顺序差异产生的表达式与本体值差异的两个变量储存. 2. 因为在计算过程中,使用了Java中间变量缓存机制.在java中,执行自增运算时,会为每一个自增操作分配一个…
1. 获取下面这个字符串中由三个字符组成的单词. da jia ting wo shuo,jin tian yao xia yu,bu shang wan zi xi,gao xing bu? 2. 代码实现: 正则表达式中:"\b"代表着单词的开头 或 结尾,也就是单词的分界处 package cn.itcast_05; import java.util.regex.Matcher; import java.util.regex.Pattern; /* * 获取功能: * 获取下面这…
1. String字符串特点: 一旦被赋值,字符串值就不能改变. 这里String是final修饰的,具有不可继承性. 2. 为什么String是final? 主要是为了"效率" 和 "安全性" 的缘故. (1)效率: String设计的时候考虑很周到,倘若允许用户继承String,自定义MyString可能会降低程序的性能. (2)安全: 若 String允许被继承, 由于它的高度被使用率. 有时会依靠它算hash值作为地址,如果String是可变的那就全乱套了.…
1. 首先说明三点: (1)桶排序是稳定的 (2)桶排序是常见排序里最快的一种,比快排还要快…大多数情况下 (3)桶排序非常快,但是同时也非常耗空间,基本上是最耗空间的一种排序算法 2. 桶排序的分析过程: 对无序数组有个要求,就是成员隶属于固定(有限的)的区间,如范围为[0-9],考试分数为1-100等 例如待排数字[6,2,4,1,5,9] 准备10个空桶(桶数是固定区间中最大数,比如这里就是10) [6 2 4 1 5 9]               待排数组 [0 0 0 0 0 0…
1. String类的转换功能 String[] split(String regex)//将字符串变成字符串数组(字符串切割) byte[] getBytes()//将字符串变成字节数组 char[] toCharArray()//将字符串变成字符数组 static String valueOf(char[] chs) static String valueOf(int i ) //将字符串中字母转成大小写 String toLowerCase()//小写 String toUpperCase…
import java.util.HashMap; import java.util.Map; import java.util.Scanner; /** * 目标 : 输出一个字符串中每个字符出现的次数.(经典面试题). * * @author Administrator * */ public class MapDemo01 { public static void main(String[] args) { // TODO Auto-generated method stub // 1 键…
/*案例:统计各种字符在字符串中出现的次数 分析:只考虑三种字符类型的情况下(大写字母,小写字母,数字) 1.使用Scanner 类获取字符串数据 2.遍历字符串得到每一个字符 3.判断每一个字符是那种类型? 大写字母范围 A-Z 小写字母范围 a-z 数字范围 0-9 4.定义三个统计类型的变量,初始值为0 5.输出** */public class StringDemo03 { public static void main(String[] args) { //创建Scanner对象 Sc…
1. JDK1.5以后,简化了定义方式. (1)Integer  x = new  Integer(4):可以直接写成如下:         Integer  x = 4 ://自动装箱,通过valueOf方法. 备注:valueOf方法 (int --->  Integer) static Integer valueOf(int i) Returns a Integer instance for the specified integer value. static Integer value…
1. 面试题: Integer  i = 1: i += 1: 做了哪些事情? (1)其中Integer i =1:做了自动装箱( 使用valueOf()方法,int ---> Integer ) (2)其中i +=1:先将Integer类型的 i 自动拆箱成 int(使用intValue()方法,Integer--->int ),完成加法运行之后的 i 再装箱成Integer类型. 2. 面试题: 观察下面程序,判断输出写出结果: package cn.itcast_06; /* * 看程序…
1. Integer类概述 (1)Integer类在对象中包装了一个基本类型 int 的值,Integer类型的对象包含一个int类型的字段. (2)该类提供了多个方法,能在int类型和String类型之间互相转换,还提供了处理int类型时候非常有用的其他一些常量和方法. 2. Integer的构造方法 (1)public Integer(int value): (2)public Integer(String s): 3. Integer类的案例 package cn.itcast_02; /…
1. ArrayList存储自自定义对象并排序的案例: ArrayList存储自自定义对象,并使用Collections对ArrayList存储基本包装类的元素排序. 2. 代码实现: (1)Student.java: package cn.itcast_02; /** * @author Administrator * */ public class Student implements Comparable<Student> { private String name; private i…
1. 我有一个文本文件(user.txt),我知道数据是键值对形式的,但是不知道内容是什么. 请写一个程序判断是否有"lisi"这样的键存在,如果有就改变其值为"100"  分析:  A:把文件中的数据加载到集合中  B:遍历集合,获取得到每一个键  C:判断键是否有为"lisi"的,如果有就修改其值为"100"  D:把集合中的数据重新存储到文件中 2. 代码实现: package cn.itcast_08; import…
1. TreeSet类概述: • 能够对元素按照某种规则进行排序. • 或者根据创建set时提供的Comparator进行排序 • 具体取决于使用的构造方法 2. 代码示例: package cn.itcast_05; import java.util.TreeSet; /* * TreeSet:能够对元素按照某种规则进行排序. * 排序有两种方式 * A:自然排序 * B:比较器排序 * * TreeSet集合的特点:排序和唯一 * * 通过观察TreeSet的add()方法,我们知道最终要看…
基本类型的包装类 简介 通常来说我们在程序中经常会使用元类型,比如 int data = 1; float data = 2.1F; 但是在有些场景中不能直接使用元类型,比如如果我们想要建立一个int类型的ArrayList,你就不可以直接写做: ArrayList<int> 因为ArrayList的"<>"符号中的类型要求是类,而不能是元类型. 所以java为了解决这个问题,提出了包装类的解决方案.即对于每一种元类型,java都会引入一个包装类(wrapper…