Java中一些知识的归纳总结
1.包装类型与基本数据类型的区别。
Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这使得Java在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数据类型对应的类统称为包装类(Wrapper Class),包装类也就是基础数据类型的引用类型。 包装类均位于java.lang包,包装类和基本数据类型的对应关系如下表所示:
在这八个类名中,除了Integer和Character类以外,其它六个类的类名和基本数据类型一致,只是类名的第一个字母大写即可。
对于包装类来说,这些类的用途主要包含两种:
a、作为和基本数据类型对应的类类型存在,方便涉及到对象的操作。
b、包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法。
2.Java中valueOf()、xxxValue()、parseXxx()方法的一些练习。
3.Java中的类型转换。
(1)String转换为int
int i = Integer.parseInt(str);
int i = Integer.valueOf(str).intValue();
(2)String转换为Integer
两种构造方法的区别,Character只有一种
(3)int转换为String
String s = s.valueOf(i);
String s = Integer.toString(i);
String s = “”+i;
(4)int转换为Integer
(5)Integer转换为String
(6)Integer转换为int
-
public class TypeConversion
-
{
-
public static void main(String[] args){
-
-
//String --> int
-
String s = "111";
-
int i1 = Integer.parseInt(s); //直接使用静态方法,不会产生多余的对象,但会抛出异常
-
System.out.println("String --> int : i1=" + i1);
-
-
int i2 = Integer.valueOf(s).intValue(); //Integer.valueOf(s) 相当于 new Integer(Integer.parseInt(s)),也会抛异常,但会多产生一个对象
-
System.out.println("String --> int : i2=" + i2);
-
-
int i3 = Integer.parseInt(s,10);//若int i = Integer.parseInt("123",16);即可以看成i = 1*16*16+2*16+3
-
System.out.println("String --> int : i3=" + i3 + '\n');
-
-
-
//int --> String
-
int j = 222;
-
String t1 = String.valueOf(j);//直接使用String类的静态方法,只产生一个对象
-
System.out.println("int --> String : t1=" + t1);
-
-
String t2 = Integer.toString(j); //直接使用静态方法,产生新的对象,会抛出异常
-
System.out.println("int --> String : t2=" + t2);
-
-
String t3 = "" + j; //会产生两个String对象
-
System.out.println("int --> String : t3=" + t3 + '\n');
-
-
-
//int --> Integer
-
int m = 333;
-
Integer n1 = m; //装箱
-
System.out.println("int --> Integer:n1=" + n1);
-
-
Integer n2 = new Integer(n1);
-
System.out.println("int --> Integer:n2=" + n2);
-
-
Integer n3 = Integer.valueOf(n2);
-
System.out.println("int --> Integer:n3=" + n3 + '\n');
-
-
-
//Integer --> int
-
Integer x=444;
-
int y1 = x; //拆箱
-
System.out.println("Integer --> int:y1=" + y1);
-
-
int y2 = x.intValue();
-
System.out.println("Integer --> int:y2=" + y2);
-
-
int y3 = Integer.valueOf(x);
-
System.out.println("Integer --> int:y3=" + y3 + '\n');
-
-
-
//String --> Integer
-
String r = "555";
-
Integer k1 = Integer.valueOf(r); //这种方法常用
-
System.out.println("String --> Integer:k1=" + k1);
-
-
Integer k2 = new Integer(r);
-
System.out.println("String --> Integer:k2=" + k2);
-
-
Integer k3 = Integer.parseInt(r);
-
System.out.println("String --> Integer:k3=" + k3);
-
-
Integer k4 = Integer.parseInt(r,10);
-
System.out.println("String --> Integer:k4=" + k4 + '\n');
-
-
-
//Integer --> String
-
Integer l = 666;
-
String z1 = String.valueOf(l);
-
System.out.println("Integer --> Stringf:z1=" + z1);
-
-
String z2 = l.toString();
-
System.out.println("Integer --> Stringf:z2=" + z2);
-
-
String z3 = "" + l;
-
System.out.println("Integer --> Stringf:z3=" + z3 + '\n');
-
}
-
-
}
-
4.用Java编程实现以下功能:通过键盘输入两个数,初始化并将这两个数值交换后,输出显示后的数据。
-
import java.util.Scanner;
-
public class StudyDiary02
-
{
-
public static void main(String[] args){
-
Scanner input = new Scanner(System.in);
-
System.out.print("请输入第一个值:");
-
int a = input.nextInt();
-
System.out.print("请输入第二个值:");
-
int b = input.nextInt();
-
System.out.println("交换之前的两个值为"+a+","+b);
-
int c;
-
c = a;
-
a = b;
-
b = c;
-
System.out.println("交换之后的两个值为"+a+","+b);
-
}
-
}
5.用Java编程实现以下功能:定义一个五位整数,求各个位上的数的和。
-
import java.util.Scanner;
-
-
public class StudyDiary03
-
{
-
public static void main(String[] args) {
-
Scanner in = new Scanner(System.in);
-
System.out.print("请输入一个五位整数:");
-
int i = in.nextInt();
-
int sum = 0;
-
if (i < 10000 || i > 99999) {
-
System.out.println("输入有误!");
-
} else {
-
for (int j = 0; j < 5 ; j++ ) {
-
sum += i % 10;
-
i = i / 10;
-
}
-
System.out.println("该五位整数各位数上之和为sum=" + sum );
-
}
-
}
-
}
6.用Java编程实现以下功能:根据天数计算其包含的周数和剩余的天数。(天数通过键盘输入)
-
import java.util.Scanner;
-
public class StudyDiary04
-
{
-
public static void main(String[] args){
-
Scanner in = new Scanner(System.in);
-
System.out.print("请输入要转换的天数:");
-
int day = in.nextInt();
-
int week = day / 7;
-
day = day % 7;
-
System.out.println("为" + week + "周," + day + "天。");
-
}
-
}
7.学会使用API文档,看一看String类的所有方法。
8.明确什么是引用类型,和C++的指针有什么异同,掌握java中数组的基本知识,例如(动态/静态)初始化,赋值,求大小,关于大小改变与C/C++中的区别。
Java中一些知识的归纳总结的更多相关文章
- java中多线程知识
参考:http://www.cnblogs.com/wxd0108/p/5479442. 引 如果对什么是线程.什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内. 用多线程只 ...
- java中的字符串相关知识整理
字符串为什么这么重要 写了多年java的开发应该对String不陌生,但是我却越发觉得它陌生.每学一门编程语言就会与字符串这个关键词打不少交道.看来它真的很重要. 字符串就是一系列的字符组合的串,如果 ...
- java中基础类型的初始值,以及一些平时不注意的小知识
有时候总是卡在一些类型的初始值上,今天闲下来就来自己给自己记录一下. String a; 如果直接打印会提示未初始化.并且未初始化的a不能比较. 这时,我们定义个person类 person{ S ...
- Java中实现异常处理的基础知识
Java中实现异常处理的基础知识 异常 (Exception):发生于程序执行期间,表明出现了一个非法的运行状况.许多JDK中的方法在检测到非法情况时,都会抛出一个异常对象. 例如:数组越界和被0除. ...
- 关于Java中面向对象章节、IO 流中的重点基础知识。
一.面向对象的三大特征,以及作用. 答:面向对象的三大特征即,封装性.继承性.多态性. 其分别的作用为 : 封装作用:将数据封装起来,提高数据的安全性, 继承作用:提高代码的复用性,减少冗余代码. 多 ...
- Java开发知识之Java中的Map结构
Java开发知识之Java中的Map结构 一丶Map接口 Map没有实现Collection接口,提供的是Key 到Value的映射. Map中.不能包含相同的Key,每个Key只能映射一个Value ...
- Java开发知识之Java中的集合Set接口以及子类应用
---恢复内容开始--- Java开发知识之Java中的集合Set接口以及子类应用 一丶Set接口以及作用 在上一讲.我们熟悉了接口的实现图.以及自己各有的子类. List接口主要存储的数据是可以重复 ...
- Java开发知识之Java中的集合上List接口以及子类讲解.
Java开发知识之Java中的集合类 一丶什么是集合类 如果你学习说数据结构,那么学习集合就很简单. 因为集合就是存储数据的结构. 例如 有链表结构 (list ) 还有 map结构.等等. 集合类就 ...
- Java开发知识之Java中的泛型
Java开发知识之Java中的泛型 一丶简介什么是泛型. 泛型就是指泛指任何数据类型. 就是把数据类型用泛型替代了. 这样是可以的. 二丶Java中的泛型 Java中,所有类的父类都是Object类. ...
随机推荐
- 如何在Moodle中显示PPT课件
Moodle中目前是不直接支持PPT的,所以需要曲线救国: 1.安装 iSpring Free 8版本,免费版,其实是一个PPT的插件,在PPT的工具栏中有显示. 2.打开PPT后,直接在该工具中进行 ...
- Hbase读写流程和寻址机制
写操作流程 (1) Client通过Zookeeper的调度,向RegionServer发出写数据请求,在Region中写数据. (2) 数据被写入Region的MemStore,直到MemStore ...
- itop-4412开发板学习-内核信号量
1. 翻翻书看下,linux提供两种信号量,内核信号量,由内核控制路径使用,System V IPC信号量,由用户态进程使用.下面的就是内核部分的信号量.内核信号量类似于自旋锁,当锁关闭着时,不允许内 ...
- 【数据库】 SQLite 语法
[数据库] SQLite 语法 一 . 创建数据库 1. 只需创建数据库,只需创建文件,操作时将连接字符串指向该文件即可 2. 连接字符串 : data source = FilePath; 不能加密 ...
- java通过句柄访问对象
在Java里,任何东西都可看作对象.尽管将一切都“看作”对象,但操纵的标识符实际是指向一个对象的“句柄”(Handle),有的人将其称作一个“引用”,甚至一个“指针”. 主类型的数据成员可直接初始化, ...
- Python面试315题
感谢老男孩的武沛齐老师辛苦整理和分享,本文是转自他的博客. 第一部分 Python基础篇(80题) 为什么学习Python? 通过什么途径学习的Python? Python和Java.PHP.C.C# ...
- git部署详解
1.1 关于版本控制 1.1.1 本地版本控制 本地版本控制系统 许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别.这么做唯一的 好处就是简单,但是特别容易犯错.有 ...
- 【转】webpack4
1.不再支持node.js4.X 2.不能用webpack命令直接打包指定的文件,只能使用webpack.config.js进行配置. 即:webpack demo01.js bundle01.j ...
- R6的压力测试
VersionCode:{102} VersionName:{1.0.2}
- beta版本冲刺六
目录 组员情况 组员2:胡青元 组员3:庄卉 组员4:家灿 组员5:恺琳 组员6:翟丹丹 组员7:何家伟 组员8:政演 组员9:黄鸿杰 组员10:刘一好 组员11:何宇恒 展示组内最新成果 团队签入记 ...