2.JAVA-基础语法以及String的介绍
1.goto和const
目前java中,和C/C++有点区别,就是暂未用到goto const关键字.示例如下:
public class Hello{public static void main(String args[]){const int i =100;goto FINAL;FINAL:System.out.println("final");}}
编译报错:
2.数据划分
- java中分为两大类型:基本数据类型,引用数据类型
- 对于基本数据类型,在方法体内对参数进行重新赋值,不会改变原有变量的值
- 对于引用数据类型,在方法体内对参数进行重新赋值,可以改变原有变量的值,但是如果从新new分配的话,并不会改变原有变量所持有的引用
- 在方法中对于对象的属性值进行修改,则可以改变原有变量所指向对象的属性值
3.基本数据类型
- 在java中,基本数据类型的变量都存在栈中
- 在java中,布尔型是为boolean,和C++有所不同,而不是bool.
- 在java中,char是2字节的,主要是java内部使用unicode(utf-16)的,所以java支持中文变量名.
- 在java中,新增了一个byte数据类型.位于-128~127.如下图所示.
- 在java中,一般对于小数都使用double.
注意:在java中,对于boolean赋值非true/false时,是会报错的,和C++是有区别的,示例如下:
boolean b=5;System.out.println("5:"+b);
报错:
4.引用数据类型
可以引用数组,类,接口等,和基本数据不同,这个需要通过new由用户来开辟空间的.如果不赋值则为null
比如java中的String,就是个类,如果想用到这个类,则需要引用类.
java中的String,可以通过+进行字符串连接(而QT中的QString是不能的)
示例:
String str=new String("123"); //通过new String在堆空间生成一个对象,然后使str引用这个对象 str = str +"45"+6+7.1; System.out.println(str); //打印:1234567.1
4.1 String注意事项
在java中,String是字符串常量,永远都是指向的常量,比如:
String str=new String("123"); str = str +"45"+6+7.1; //实际上相当于:string str =new String("1234567.1");
为什么说String是字符串常量?可以看看下面的String引用传递示例:
public class Test{public static void main(String args[]){String str1=new String("123");String str2=str1; //引用str1是str2的别名str1 +="456"; //因为String是字符串常量,所以需要重新使str1 =new String("123456");//而str2还是指向之前的"123"处 System.out.println("str1:"+str1);System.out.println("str2:"+str2);} }
运行打印:
如上图所示,可以看到修改str1后,str2的值并没有跟着改变.
总结
所以,String在更改内容时,会不断的创建并回收之前的对象,速度是很慢的,适用于少数字符串操作
4.2 StringBuffer
StringBuffer和String类似, 都是存储字符串,但是StringBuffer存储的则是字符串变量
为什么说StringBuffer是字符串变量?可以看看下面的StringBuffer引用传递示例:
public class Test{public static void main(String args[]){StringBuffer a = new StringBuffer("123");StringBuffer b = a; //引用b是a的别名 b.append("456");System.out.println("a:"+a);System.out.println("b:"+b);} }
运行打印:
如上图所示,可以看到修改b后,a的值也跟着改变.
总结
字符缓冲区在进行大量操作的情况下,使用StringBuffer合适.
下章学习:3.JAVA-方法重载,类的封装,构造/析构方法
转载于:https://www.cnblogs.com/lifexy/p/10778461.html
2.JAVA-基础语法以及String的介绍相关推荐
- Java基础语法(九)——String类
文章目录 Java基础语法(九)--String类 一.定义方式 二.内存 三.字符串比较相等 四.字符串常量池 (1) 直接赋值 (2)采用构造方法 (3)intern 的使用 五.理解字符串不可变 ...
- java基础语法入门到类型转换问题,运算符,数据输入,数组,方法概述,Debug模式,以及10个小案例的详细介绍。
java基础语法 目录 java基础语法 1. Java概述 1.1 Java语言发展史(了解) 1.2 Java语言跨平台原理(理解) 1.3 JRE和JDK(记忆) 1.4 JDK的下载和安装(应 ...
- Java基础语法(数组)
第4天 Java基础语法 今日内容介绍 u 流程控制语句(switch) u 数组 第1章 流程控制语句 1.1 选择结构switch switch 条件语句也是一种很常用的选择语句,它和if条件语句 ...
- Java基础语法(一)
Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共同研发,并在1995年正式 ...
- Java基础语法-数据类型与idea配置
文章目录 day02 - Java基础语法 1. 注释 使用的技巧 注意点 2. 关键字 2.1 概念 2.2 第一个关键字class 3. 字面量 区分技巧 4. 变量 4.1 什么是变量? 4.2 ...
- Java基础语法-环境搭建及入门
1. Java概述 1.1 Java语言背景介绍(了解) 语言:人与人交流沟通的表达方式 计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言 Java语言是美国Sun公司(Stanford Un ...
- Java基础语法知识你真的都会吗?
第一阶段 JAVA基础知识 第二章 Java基础语法知识 在我们开始讲解程序之前,命名规范是我们不得不提的一个话题,虽说命名本应该是自由的,但是仍然有一定的"潜规则",通过你对命名 ...
- JAVA基础语法笔记(黑马程序员系列)
1. Java概述 1.1 Java语言发展史(了解) 语言:人与人交流沟通的表达方式 计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言 Java语言是美国Sun公司(Stanford Uni ...
- Java基础语法(三)——运算符
文章目录 Java基础语法(三)--运算符 一.算术运算符 1.基本四则运算符 (1)练习 (2)注意事项 2.复合运算符 3.自增自减操作符 二.关系运算符 三.逻辑操作符 1.逻辑与&&a ...
- JAVA基础语法_1
1. Java概述 1.1 Java语言背景介绍(了解) 语言:人与人交流沟通的表达方式 计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言 Java语言是美国Sun公司(Stanford Un ...
最新文章
- 威斯康辛大学《机器学习导论》2020秋季课程完结,课件、视频资源已开放
- LaTeX 图片插入
- 【Web安全】利用burp抓包和CSRF伪造进入admin真实后台
- 很强大的一个jquery分页插件
- MySQL timediff()函数
- Navicat工具导出Mysql数据表结构到Excel文件中
- Elasticsearch实践(二)linux安装
- 程序员面试金典——18.13 最大字母矩阵
- HCIE Security 二层攻击防范 备考笔记(幕布)
- 在jquery中想要找到所以同辈元素方法_在jquery中siblings找到所有元素的同辈元素,是什么意思,有人可以给我详细讲解一下不?...
- 电子海图信息系统 (ECDIS)的发展及应用
- 缺少软件测试项目?最好试试这套方法
- 南方cass提取坐标生成表格_如何在CAD中或者CASS中将坐标导入到EXCEL表格(个人笔记)...
- 42pinQFN芯片焊接总结
- monetDb列式存储架构分析
- github之处理“忒修斯之船”问题
- 饮料自动售货机C++
- 如何在Debian系统下搭建SVN
- 15.模拟e^x的麦克劳林展开式
- Epson针式打印机打印十六进制内容解决方案
热门文章
- mysql查看执行计划任务_学习计划 mysql explain执行计划任务详解
- mysql批量删除进程_小程序批量删除云数据库里的数据
- java stream Interface BiFunction<T,U,R>
- mybatis SqlMapConfig.xml mappers
- Requests redirect
- 前端-requests-flask对应关系 form
- java 接口案例
- 3.1 神经网络概览
- java表达式语言种类_Java之语言控制语句
- python中的mul函数_Sympy:“Mul”对象没有分层函数的“cos”属性