Skip to content

Commit 3749783

Browse files
committed
updates java basic
1 parent 692c555 commit 3749783

4 files changed

Lines changed: 382 additions & 382 deletions

File tree

第2章 Java编程基础/基本数据类型包装类.md

Lines changed: 65 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -60,19 +60,19 @@ PS:这个字符串必须是由数字字符组成
6060
| static String toString(int i) | 返回一个表示指定整数的 String 对象 |
6161
| static Integer valueOf(int i) | 返回一个表示指定的 int 值的 Integer 实例 |
6262
| static Integer valueOf(String s) | 返回保存指定的 String 的值的 Integer 对象 |
63-
<br>
63+
6464
代码示例:
6565
```java
6666
package cn.itcast_03;
67-
68-
/*
69-
* int类型和String类型的相互转换
67+
68+
/*
69+
* int类型和String类型的相互转换
7070
*
71-
* int -- String
72-
* String.valueOf(number)
71+
* int -- String
72+
* String.valueOf(number)
7373
*
74-
* String -- int
75-
* Integer.parseInt(s)
74+
* String -- int
75+
* Integer.parseInt(s)
7676
*/
7777
public class IntegerDemo {
7878
public static void main(String[] args) {
@@ -94,7 +94,7 @@ public class IntegerDemo {
9494
String s4 = Integer.toString(number);
9595
System.out.println("s4:" + s4);
9696
System.out.println("-----------------");
97-
97+
9898
// String -- int
9999
String s = "100";
100100
// 方式1
@@ -131,20 +131,20 @@ public static int parseInt(String s,int radix)
131131

132132
```java
133133
package cn.itcast_04;
134-
135-
/*
136-
* 常用的基本进制转换
137-
* public static String toBinaryString(int i)
138-
* public static String toOctalString(int i)
139-
* public static String toHexString(int i)
134+
135+
/*
136+
* 常用的基本进制转换
137+
* public static String toBinaryString(int i)
138+
* public static String toOctalString(int i)
139+
* public static String toHexString(int i)
140140
*
141-
* 十进制到其他进制
142-
* public static String toString(int i,int radix)
143-
* 由这个我们也看到了进制的范围:2-36
144-
* 为什么呢?0,...9,a...z
141+
* 十进制到其他进制
142+
* public static String toString(int i,int radix)
143+
* 由这个我们也看到了进制的范围:2-36
144+
* 为什么呢?0,...9,a...z
145145
*
146-
* 其他进制到十进制
147-
* public static int parseInt(String s,int radix)
146+
* 其他进制到十进制
147+
* public static int parseInt(String s,int radix)
148148
*/
149149
public class IntegerDemo {
150150
public static void main(String[] args) {
@@ -153,7 +153,7 @@ public class IntegerDemo {
153153
System.out.println(Integer.toOctalString(100));
154154
System.out.println(Integer.toHexString(100));
155155
System.out.println("-------------------------");
156-
156+
157157
// 十进制到其他进制
158158
System.out.println(Integer.toString(100, 10));
159159
System.out.println(Integer.toString(100, 2));
@@ -169,7 +169,7 @@ public class IntegerDemo {
169169
System.out.println(Integer.toString(100, 37));
170170
System.out.println(Integer.toString(100, 36));
171171
System.out.println("-------------------------");
172-
172+
173173
//其他进制到十进制
174174
System.out.println(Integer.parseInt("100", 10));
175175
System.out.println(Integer.parseInt("100", 2));
@@ -190,15 +190,15 @@ public class IntegerDemo {
190190

191191
```java
192192
package cn.itcast_05;
193-
194-
/*
195-
* JDK5的新特性
196-
* 自动装箱:把基本类型转换为包装类类型
197-
* 自动拆箱:把包装类类型转换为基本类型
193+
194+
/*
195+
* JDK5的新特性
196+
* 自动装箱:把基本类型转换为包装类类型
197+
* 自动拆箱:把包装类类型转换为基本类型
198198
*
199-
* 注意一个小问题:
200-
* 在使用时,Integer x = null;代码就会出现NullPointerException。
201-
* 建议先判断是否为null,然后再使用。
199+
* 注意一个小问题:
200+
* 在使用时,Integer x = null;代码就会出现NullPointerException。
201+
* 建议先判断是否为null,然后再使用。
202202
*/
203203
public class IntegerDemo {
204204
public static void main(String[] args) {
@@ -207,12 +207,12 @@ public class IntegerDemo {
207207
Integer ii = 100;
208208
ii += 200;
209209
System.out.println("ii:" + ii);
210-
210+
211211
// 通过反编译后的代码
212212
// Integer ii = Integer.valueOf(100); //自动装箱
213213
// ii = Integer.valueOf(ii.intValue() + 200); //自动拆箱,再自动装箱
214214
// System.out.println((new StringBuilder("ii:")).append(ii).toString());
215-
215+
216216
Integer iii = null;
217217
// NullPointerException
218218
if (iii != null) {
@@ -237,18 +237,18 @@ public Character(char value)
237237
| isDigit(char ch) | 判断是否是数字 |
238238
| char toUpperCase(char ch) | 转换成大写 |
239239
| char toLowerCase(char ch) | 转换成小写 |
240-
<br>
240+
241241
代码示例:
242242

243243
```java
244244
package cn.itcast_02;
245-
246-
/*
247-
* public static boolean isUpperCase(char ch):判断给定的字符是否是大写字符
248-
* public static boolean isLowerCase(char ch):判断给定的字符是否是小写字符
249-
* public static boolean isDigit(char ch):判断给定的字符是否是数字字符
250-
* public static char toUpperCase(char ch):把给定的字符转换为大写字符
251-
* public static char toLowerCase(char ch):把给定的字符转换为小写字符
245+
246+
/*
247+
* public static boolean isUpperCase(char ch):判断给定的字符是否是大写字符
248+
* public static boolean isLowerCase(char ch):判断给定的字符是否是小写字符
249+
* public static boolean isDigit(char ch):判断给定的字符是否是数字字符
250+
* public static char toUpperCase(char ch):把给定的字符转换为大写字符
251+
* public static char toLowerCase(char ch):把给定的字符转换为小写字符
252252
*/
253253
public class CharacterDemo {
254254
public static void main(String[] args) {
@@ -275,52 +275,52 @@ public class CharacterDemo {
275275
System.out.println("toLowerCase:" + Character.toLowerCase('A'));
276276
System.out.println("toLowerCase:" + Character.toLowerCase('a'));
277277
}
278-
}
278+
}
279279
```
280280
## **4.4 练习**
281281
代码示例:统计一个字符串中大写字母字符,小写字母字符,数字字符出现的次数。(不考虑其他字符)
282282

283283
```java
284284
package cn.itcast_03;
285-
285+
286286
import java.util.Scanner;
287-
288-
/*
289-
* 统计一个字符串中大写字母字符,小写字母字符,数字字符出现的次数。(不考虑其他字符)
287+
288+
/*
289+
* 统计一个字符串中大写字母字符,小写字母字符,数字字符出现的次数。(不考虑其他字符)
290290
*
291-
* 分析:
292-
* A:定义三个统计变量。
293-
* int bigCont=0;
294-
* int smalCount=0;
295-
* int numberCount=0;
296-
* B:键盘录入一个字符串。
297-
* C:把字符串转换为字符数组。
298-
* D:遍历字符数组获取到每一个字符
299-
* E:判断该字符是
300-
* 大写 bigCount++;
301-
* 小写 smalCount++;
302-
* 数字 numberCount++;
303-
* F:输出结果即可
291+
* 分析:
292+
* A:定义三个统计变量。
293+
* int bigCont=0;
294+
* int smalCount=0;
295+
* int numberCount=0;
296+
* B:键盘录入一个字符串。
297+
* C:把字符串转换为字符数组。
298+
* D:遍历字符数组获取到每一个字符
299+
* E:判断该字符是
300+
* 大写 bigCount++;
301+
* 小写 smalCount++;
302+
* 数字 numberCount++;
303+
* F:输出结果即可
304304
*/
305305
public class CharacterTest {
306306
public static void main(String[] args) {
307307
// 定义三个统计变量。
308308
int bigCount = 0;
309309
int smallCount = 0;
310310
int numberCount = 0;
311-
311+
312312
// 键盘录入一个字符串。
313313
Scanner sc = new Scanner(System.in);
314314
System.out.println("请输入一个字符串:");
315315
String line = sc.nextLine();
316-
316+
317317
// 把字符串转换为字符数组。
318318
char[] chs = line.toCharArray();
319-
319+
320320
// 历字符数组获取到每一个字符
321321
for (int x = 0; x < chs.length; x++) {
322322
char ch = chs[x];
323-
323+
324324
// 判断该字符
325325
if (Character.isUpperCase(ch)) {
326326
bigCount++;
@@ -330,7 +330,7 @@ public class CharacterTest {
330330
numberCount++;
331331
}
332332
}
333-
333+
334334
// 输出结果即可
335335
System.out.println("大写字母:" + bigCount + "");
336336
System.out.println("小写字母:" + smallCount + "");
@@ -341,4 +341,4 @@ public class CharacterTest {
341341

342342
运行结果:
343343

344-
![Character](http://img.blog.csdn.net/20150829010223059)
344+
![Character](http://img.blog.csdn.net/20150829010223059)

第2章 Java编程基础/详细介绍JAVA和C++区别.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,44 +6,44 @@ Java和c++的相似之处多于不同之处,但两种语言问几处主要的
66

77
我在这里不能完全列出不同之处,仅列出比较显著的区别:
88

9-
##**1. 指针**
9+
## **1. 指针**
1010

1111
JAVA语言让编程者无法找到指针来直接访问内存无指针,并且增添了自动的内存管理功能,从而有效地防止了c/c++语言中指针操作失误,如野指针所造成的系统崩溃。但也不是说JAVA没有指针,虚拟机内部还是使用了指针,只是外人不得使用而已。这有利于Java程序的安全。
1212

13-
##**2. 多重继承**
13+
## **2. 多重继承**
1414

1515
c++支持多重继承,这是c++的一个特征,它允许多父类派生一个类。尽管多重继承功能很强,但使用复杂,而且会引起许多麻烦,编译程序实现它也很不容易。Java不支持多重继承,但允许一个类继承多个接口(extends+implement),实现了c++多重继承的功能,又避免了c++中的多重继承实现方式带来的诸多不便。
1616

17-
##**3. 数据类型及类**
17+
## **3. 数据类型及类**
1818

1919
Java是完全面向对象的语言,所有函数和变量部必须是类的一部分。除了基本数据类型之外,其余的都作为类对象,包括数组。对象将数据和方法结合起来,把它们封装在类中,这样每个对象都可实现自己的特点和行为。而c++允许将函数和变量定义为全局的。此外,Java中取消了c/c++中的结构和联合,消除了不必要的麻烦。
2020

21-
##**4. 自动内存管理**
21+
## **4. 自动内存管理**
2222

2323
Java程序中所有的对象都是用new操作符建立在内存堆栈上,这个操作符类似于c++的new操作符。下面的语句由一个建立了一个类Read的对象,然后调用该对象的work方法:
2424

2525
```
2626
Read r=new Read();
27-
r.work();
27+
r.work();
2828
```
2929

3030
语句Read r=new Read();在堆栈结构上建立了一个Read的实例。Java自动进行无用内存回收操作,不需要程序员进行删除。而c十十中必须由程序贝释放内存资源,增加了程序设计者的负扔。Java中当一个对象不被再用到时,无用内存回收器将给它加上标签以示删除。JAVA里无用内存回收程序是以线程方式在后台运行的,利用空闲时间工作。
3131

32-
##**5. 操作符重载**
32+
## **5. 操作符重载**
3333

3434
Java不支持操作符重载。操作符重载被认为是c十十的突出特征,在Java中虽然类大体上可以实现这样的功能,但操作符重载的方便性仍然丢失了不少。Java语言不支持操作符重载是为了保持Java语言尽可能简单。
3535

36-
##**6. 预处理功能**
36+
## **6. 预处理功能**
3737

3838
Java不支持预处理功能。c/c十十在编译过程中都有一个预编泽阶段,即众所周知的预处理器。预处理器为开发人员提供了方便,但增加丁编译的复杂性。JAVA虚拟机没有预处理器,但它提供的引入语句(import)与c十十预处理器的功能类似。
3939

40-
##**7. Java不支持缺省函数参数,而c十十支持**
40+
## **7. Java不支持缺省函数参数,而c十十支持**
4141

4242
在c中,代码组织在函数中,函数可以访问程序的全局变量。c十十增加了类,提供了类算法,该算法是与类相连的函数,c十十类方法与Java类方法十分相似,然而,由于c十十仍然支持c,所以不能阻止c十十开发人员使用函数,结果函数和方法混合使用使得程序比较混乱。
4343

4444
Java没有函数,作为一个比c十十更纯的面向对象的语言,Java强迫开发人员把所有例行程序包括在类中,事实上,用方法实现例行程序可激励开发人员更好地组织编码。
4545

46-
##**8. 字符串**
46+
## **8. 字符串**
4747

4848
c和c十十不支持字符串变量,在c和c十十程序中使用Null终止符代表字符串的结束,在Java中字符串是用类对象(strinR和stringBuffer)来实现的,这些类对象是Java语言的核心,用类对象实现字符串有以下几个优点:
4949

@@ -52,23 +52,23 @@ c和c十十不支持字符串变量,在c和c十十程序中使用Null终止符
5252
- Java字符串执行运行时检空,可帮助排除一些运行时发生的错误;
5353
- 可对字符串用“十”进行连接操作。
5454

55-
##**9. goto语句**
55+
## **9. goto语句**
5656

5757
“可怕”的goto语句是c和c++的“遗物”,它是该语言技术上的合法部分,引用goto语句引起了程序结构的混乱,不易理解,goto语句子要用于无条件转移子程序和多结构分支技术。鉴于以广理由,Java不提供goto语句,它虽然指定goto作为关键字,但不支持它的使用,使程序简洁易读。
5858

59-
##**l0. 类型转换**
59+
## **l0. 类型转换**
6060

6161
在c和c十十中有时出现数据类型的隐含转换,这就涉及了自动强制类型转换问题。例如,在c十十中可将一浮点值赋予整型变量,并去掉其尾数。Java不支持c十十中的自动强制类型转换,如果需要,必须由程序显式进行强制类型转换。
6262

63-
##**11. 异常**
63+
## **11. 异常**
6464

6565
JAVA中的异常机制用于捕获例外事件,增强系统容错能力
6666

6767
```java
6868
try{//可能产生例外的代码
6969
}catch(exceptionType name){
7070
//处理
71-
}
71+
}
7272
```
7373

74-
其中exceptionType表示异常类型。而C++则没有如此方便的机制。
74+
其中exceptionType表示异常类型。而C++则没有如此方便的机制。

0 commit comments

Comments
 (0)