以下是关于java中8种基本类型的介绍说明:

 package cn.review.day01;
/**
* java基础复习,8种数据类型
* (byte,short,long,int,double,float,boolean,char)
* @author dyq
*
*/
public class JavaBase01 {
public static void main(String[] args) {
/**
* 整数类型 byte,short,int,long
* byte范围:-128~127,1个字节
* short范围:-2的15次方~2的15次方-1,2个字节
* int范围:-2的31次方~2的31次方-1,4个字节
* long范围:-2的63次方~2的63次方-1,8个字节,声明方式一般后缀加L;
* 以下为一般申明方式
*/
byte b = 127;
System.out.println(b);
short s = 123;
System.out.println(s);
int i = 10;
System.out.println(i);
long l = 100000000L;
System.out.println(l);
/**
* 浮点型
* float范围:10的-38次方到10的38次方,4个字节,声明方式必须后缀加f
* double范围:10的-308次方到10的308次方,8个字节
*/
float f = -4.23f;
double d = 4.23;
/**
* 布尔类型:boolean
*/
boolean bool = true;
System.out.println(bool);
/**
* 字符类型
* char:使用单引号括起来,2个字节
*/
char c = 'a';
System.out.println(c); }
}

关于String,StringBuffer,StringBuilder的相关介绍以及区别说明:

package cn.review.day01;

/**
* String,StringBuffer,StringBuilder的介绍
* 三者的区别:
* 1.执行速度方面:StringBuilder>StringBuffer>String
* 2.StringBuilder是线程不安全的,而StringBuffer是线程安全的
*
* 使用场景:
* String适用于少量字符串操作的情况下
* StringBuilder适用于单线程情况小,在字符缓存区进行大量操作的情况下。
* StringBuffer适用于在多线程的情况下,在字符缓存区进行大量操作的情况下。
* @author dyq
*
*/
public class JavaBase02String {
public static void main(String[] args) {
/**
* String为字符常量,长度不可变,不可变常量是线程安全的。
* String类型比较不同对象内容是否相同,应该用equals,因为==用于比较引用类型和比较基本数据类型时具有不同的功能。
* 如果String缓冲池内不存在与其指定值相同的String对象,那么此时虚拟机将为此创建新的String对象,并存放在String缓冲池内。
* 如果String缓冲池内存在与其指定值相同的String对象,那么此时虚拟机将不为此创建新的String对象,而直接返回已存在的String对象的引用。
*/
String a = "aaa";
System.out.println(a);
String str1 = "aaab";
String str2 = a+"b";
System.out.println(str1==str2);//false
System.out.println(str1.equals(str2));//true /**
* StringBuffer为字符串变量,查看源码发现其方法都使用synchronized关键字修饰,所以为线程安全的。
*
* 例如源码: @Override
* public synchronized StringBuffer append(String str) {
* toStringCache = null;
* super.append(str);
* return this;
* }
*/
StringBuffer sbf = new StringBuffer();
sbf.append("aaa");
System.out.println(sbf);
/**
* StringBuilder为字符串变量,查看源码发现其方法没有使用synchronized关键字修饰,所以为线程不安全的。
* 例如源码:
* @Override
* public StringBuilder append(String str) {
* super.append(str);
* return this;
* }
*/
StringBuilder sbu = new StringBuilder();
sbu.append("aaa");
System.out.println(sbu); }
}

JAVA基础部分复习(一、8中基础类型,以及String相关内容)的更多相关文章

  1. java高级用法之:在JNA中使用类型映射

    目录 简介 类型映射的本质 TypeMapper NativeMapped 总结 简介 JNA中有很多种映射,library的映射,函数的映射还有函数参数和返回值的映射,libary和函数的映射比较简 ...

  2. 自己挖的坑自己填--Mybatis mapper文件if标签中number类型及String类型的坑

    1.现象描述 (1)使用 Mybatis 在进行数据更新时,大部分时候update语句都需要通过动态SQL进行拼接.在其中,if标签中经常会有 xxx !='' 这种判断,若 number 类型的字段 ...

  3. 关于Java中基本类型的长度相关基础知识

    1.  用HeapByteBuffer放int占几个byte? 占4个.而且不论你是放1还是-1还是0xffff. 因为int的长度是4个byte,HeapByteBuffer的存储又是byte数组. ...

  4. Java基础(33):StringBuilder的方法与应用实例(String相关类)

    Java 中的 StringBuilder 类的常用方法 重要的事情说三遍: 在需要频繁对字符串进行修改操作时使用 StringBuilder 的效率比 String 要高 在需要频繁对字符串进行修改 ...

  5. 【Java学习笔记之八】JavaBean中布尔类型使用注意事项

    JavaBean是一个标准,遵循标准的Bean是一个带有属性和getters/setters方法的Java类. JavaBean的定义很简单,但是还有有一些地方需要注意,例如Bean中含有boolea ...

  6. JAVA案例练习: 去除ArrayList中重复的字符串(字符串内容相同),去除重复的对象

    package com.yqw.list; import java.util.ArrayList;import java.util.Iterator; public class Demo_ArrayL ...

  7. Java中Date类型与String 类型之间的互相转换

    Java中String类型和Date类型之间的转换 我们在注册网站的时候,往往需要填写个人信息,如姓名,年龄,出生日期等,在页面上的出生日期的值传递到后台的时候是一个字符串,而我们存入数据库的时候确需 ...

  8. Delphi中返回类型为string的函数的一个陷阱(不是很懂)

    如果类的一个成员函数的返回值是string类型,需要注意一个问题 其返回值可能是错误的 例如函数的实现如下 function GetString( s: string ): string;begin  ...

  9. JAVA 去除实体中类型为string的属性值中的空格

    前端传入的参数实体中,有时候会出现传入了一空格,导致操作失败,这时就可以利用java反射机制去除实体中类型为sting的属性值中的空格. java代码示例: package com.spyang.ut ...

随机推荐

  1. MSSQL内存架构及管理

    1.  MSSQL内存架构 相比较Oracle,MSSQL的内存区域并没那么清晰,但和Oracle类似,MSSQL内存区域大体也可以分为三个部分:buffer pool,query/workspace ...

  2. sublime ctags跳转函数使用

    sublime 点击某函数 按F12可以查到相关函数文件 正题: 1.下载ctags客户端文件 http://prdownloads.sourceforge.net/ctags/ctags58.zip ...

  3. MVC的前端和后端的Model Binding

    1.前端提交JSON 字符串 {"id":13,"title":"这里是标题33","day":"2018-8 ...

  4. Spring Boot + thymeleaf 后台与页面(二)

    Spring Boot推荐使用thymeleaf模板完成与页面的交互(已不支持JSP某些特性,不推荐JSP) 步骤 在一个Spring Boot Web项目基础上,也可以参考我前一篇文章建立的项目 1 ...

  5. 《python》join、守护进程、锁/信号量/事件、进程队列

    一.multiprocess.process模块 1.join方法 阻塞主进程,等待子进程执行完毕再放开阻塞 import time import random from multiprocessin ...

  6. import 语句

    声明package的语句必须在java类的有效代码第一行,所import语句要放在package 声明语句之后. import的语法格式为:    import+空格+类全限定名+: 该语句的作用是, ...

  7. Linux学习 : 移植qt 5.6.3 及 tslib 1.4

    (一) 移植 qt5.6.3 一.qt简介: Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架.它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具 ...

  8. SQL-13 从titles表获取按照title进行分组,每组个数大于等于2,给出title以及对应的数目t。

    题目描述 从titles表获取按照title进行分组,每组个数大于等于2,给出title以及对应的数目t.CREATE TABLE IF NOT EXISTS "titles" ( ...

  9. 给Win32 GUI程序增加控制台窗口的方法

    给Win32 GUI程序增加控制台窗口的方法 2008年10月11日 星期六 下午 04:43 在Win32的GUI程序中,没有控制台窗口,我们输出调试信息时有些不方便,以往我的做法是使用Messag ...

  10. tf 版本更新 记录

    tf 经常更新版本,网上教程又是各版本都有,且不标明版本,致使各种用法难以分清哪个新,哪个旧,这里做个记录,以前的博客我就不更新了,请大家见谅. tf.nn.rnn_cell 改为 tf.contri ...