Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)
1.Java四类八种数据类型
byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0
short:短整型,在内存中占16位,即2个字节,取值范围-32768~32717,默认值0
int:整型,用于存储整数,在内在中占32位,即4个字节,取值范围-2147483648~2147483647,默认值0
long:长整型,在内存中占64位,即8个字节-2^63~2^63-1,默认值0L
float:浮点型,在内存中占32位,即4个字节,用于存储带小数点的数字(与double的区别在于float类型有效小数点只有6~7位),默认值0
double:双精度浮点型,用于存储带有小数点的数字,在内存中占64位,即8个字节,默认值0
char:字符型,用于存储单个字符,占16位,即2个字节,取值范围0~65535,默认值为空
boolean:布尔类型,占1个字节,用于判断真或假(仅有两个值,即true、false),默认值false
2.数据类型的转换
(1)将字符串(String)转化为整型(int)
- @Test
- public void testDataType(){
- String str="123";
- //将字符串转换为整数
- int i = Integer.parseInt(str);
- System.out.println("i的值为:"+i);
- }
控制台输出为:
(2)整型(int)转化为字符串(String)
- @Test
- public void testDataType(){
- int i=516;
- //方法1
- String str1 = String.valueOf(i);
- //方法2
- String str2 = Integer.toString(i);
- //方法3:此方法最常用
- String str3 = "" + i ;
- System.out.println("str1的值为:"+str1);
- System.out.println("str2的值为:"+str2);
- System.out.println("str3的值为:"+str3);
- }
控制台输出为:
(3)将字符串(String)转化为double类型
- @Test
- public void testDataType(){
- String str="123.890";
- //将字符串转换为double
- double i = Double.parseDouble(str);
- System.out.println("i的值为:"+i);
- }
控制台输出:
处理方案:
- @Test
- public void testDataType(){
- String str="123.890";
- //将字符串转换为double
- double i = Double.parseDouble(str);
- i=i+6.110;
- System.out.println("i的值为:"+i);
- DecimalFormat df = new DecimalFormat("0.000");
- String newStr=df.format(i);
- System.out.println("i的值为:"+newStr);
- }
利用DecimalFormat类,帮你用最快的速度将数字格式化为你需要的样子,调用format()方法,注意:这个方法的返回值类型为String
参考用法:
- public static void main(String[] args){
- double pi=3.1415927;//圆周率
- //取一位整数
- System.out.println(new DecimalFormat("0").format(pi));//3
- //取一位整数和两位小数
- System.out.println(new DecimalFormat("0.00").format(pi));//3.14
- //取两位整数和三位小数,整数不足部分以0填补。
- System.out.println(new DecimalFormat("00.000").format(pi));//03.142
- //取所有整数部分
- System.out.println(new DecimalFormat("#").format(pi));//3
- //以百分比方式计数,并取两位小数
- System.out.println(new DecimalFormat("#.##%").format(pi));//314.16%
- long c=299792458;//光速
- //显示为科学计数法,并取五位小数
- System.out.println(new DecimalFormat("#.#####E0").format(c));//2.99792E8
- //显示为两位整数的科学计数法,并取四位小数
- System.out.println(new DecimalFormat("00.####E0").format(c));//29.9792E7
- //每三位以逗号进行分隔。
- System.out.println(new DecimalFormat(",###").format(c));//299,792,458
- //将格式嵌入文本
- System.out.println(new DecimalFormat("光速大小为每秒,###米").format(c)); //光速大小为每秒299,792,458米
- }
(4)指定日期样式
- @Test
- public void testDataType(){
- SimpleDateFormat sf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
- Date now=new Date();
- String currentTime=sf.format(now);
- System.out.println("当前时间为:"+currentTime);
- }
控制台输出为:
(5)字符串与其它数据类型的转换
<1>其它类型向字符串的转换
①调用类的字符串转换方法:X.toString();
②自动转换:X+“”;
③使用String的方法:String.valueOf(X);
注意:重点掌握第1种和第2种方法。
案例:
- @Test
- public void testDataType(){
- ArrayList<String> list=new ArrayList<>();
- list.add("linda");
- list.add("bob");
- list.add("jack");
- //注意:利用toString方法将List集合转化为字符串
- System.out.println(list.toString());
- }
控制台输出为:
注意:集合元素是用中括号[ ]
(6)List转换为数组,数组转List
<1>List转换为数组
- @Test
- public void testDataType(){
- ArrayList<String> list=new ArrayList<>();
- list.add("linda");
- list.add("bob");
- list.add("jack");
- //List转换为Array
- String[] strings = new String[list.size()];
- list.toArray(strings);
- //控制台输出数组元素
- System.out.println(strings[0]);
- System.out.println(strings[1]);
- System.out.println(strings[2]);
- }
控制台输出:
<2>数组转List
- @Test
- public void testDataType(){
- String[] s = {"a","b","c"};
- List list = Arrays.asList(s);
- System.out.println(list.toString());
- }
控制台输出:
(7)字符串分隔成数组
- @Test
- public void testStringSplit() {
- String str="1-2-3";
- String[] split = str.split("-");
- System.out.println(split[0]);
- }
控制台输出:
3.java 获取当前时间、年、月、日、时、分、秒
- @Test
- public void testGetYear(){
- Calendar now = Calendar.getInstance();
- System.out.println("年:"+ now.get(Calendar.YEAR));
- System.out.println("月:"+ (now.get(Calendar.MONTH) +1));
- System.out.println("日:"+ now.get(Calendar.DAY_OF_MONTH));
- System.out.println("时:"+ now.get(Calendar.HOUR_OF_DAY));
- System.out.println("分:"+ now.get(Calendar.MINUTE));
- System.out.println("秒:"+ now.get(Calendar.SECOND));
- Date d =new Date();
- SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- System.out.println("当前时间:"+ sdf.format(d));
- }
控制台输出:
4.字符串相关操作
(1)转换大小写
- @Test
- public void testChange() {
- String str = "Din933";
- System.out.println("原字符串:" + str);
- String newA = str.toUpperCase();
- System.out.println("大写转换:" + newA);
- String newB = str.toLowerCase();
- System.out.println("小写转换:" + newB);
- }
效果图:
Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)的更多相关文章
- JAVA常用知识点及面试题总结
1. String.StringBuffer.StringBuilder三者区别? (1)三者在执行速率上的比较: String<StringBuffer<StringBuilder 原因 ...
- Java常用英语汇总(面试必备)
Java常用英语汇总(面试必备) abstract (关键字) 抽象 ['.bstr.kt] access vt.访问,存 ...
- Java 常用知识点
Java 常用知识点 1.日期格式化 SimpleDateFormat Date date=new Date(System.currentTimeMillis()) ; SimpleDateForma ...
- Java面试知识点汇总
Java面试知识点汇总 置顶 2019年05月07日 15:36:18 温柔的谢世杰 阅读数 21623 文章标签: 面经java 更多 分类专栏: java 面试 Java面试知识汇总 版权声明 ...
- day7.关于字符串的相关操作
一.字符串的相关操作 """ (1)字符串的拼接 (2)字符串的重复 (3)字符串跨行拼接 (4)字符串的索引 (5)字符串的切片: 语法 => 字符串[::] 完 ...
- Python字符串的相关操作
1.大小写转换 判断字符串 s.isalnum() #所有字符都是数字或者字母 s.isalpha() #所有字符都是字母 s.isdigit() #所有字符都是数字 s.islower() #所有字 ...
- JS中字符串的相关操作
一.字符串的创建 创建一个字符串有几种方法.最简单的是用引号将一组字符包含起来,可以将其赋值给一个字符串变量. var myStr = "Hello, String!"; 可以用双 ...
- 路径打印(set以及字符串的相关操作)
题目链接 题目描述 给你一串路径,譬如: a\b\c a\d\e b\cst d\ 你把这些路径中蕴含的目录结构给画出来,子目录直接列在父目录下面,并比父目录向右缩一格,就像这样: a b ...
- Python中的字符串及其相关操作
1.表示: 字符串可以用单引号或者双引号括起来,两者效果是完全一样的. 针对较长的字符串,也可以用三个引号括起来,即"""..."""或者' ...
随机推荐
- Linux目录和文件——查询目录和文件的命令
Linux目录和文件——查询目录和文件的命令 摘要:本文主要学习了在Linux系统中是如何查询目录和文件的. which命令 which命令是根据PATH环境变量设置的路径,去搜索执行文件. 基本语法 ...
- 【设计模式】Singleton
前言 Singleton设计模式,确保全局只存在一个该类的实例.将构造器声明为private,防止调用(虽然还是可以使用反射来调用).声明一个静态的类实例在类中,声明一个公共的获取实例的方法.这篇博文 ...
- css去掉button点击后的蓝框
转自:http://www.inbeijing.org/archives/1139 css控制Button 按钮的点击时候出现蓝色边框的问题 添加css属性,这样在点击安按钮的时候就不会有蓝色边框了. ...
- 剑指:和为S的连续正数序列
题目描述 输入一个正数 s,打印出所有和为 s 的连续正数序列(至少含有两个数). 例如输入 15,由于 1+2+3+4+5=4+5+6=7+8=15,所以结果打印出 3 个连续序列 1-5.4-6 ...
- TP5 Request 请求对象【转】
app\index\controller\Index.php <?php namespace app\index\controller; use think\Request; class Ind ...
- 数据库MySQL学习笔记高级篇
数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...
- jenkins使用小技巧:pom.xml文件里的版本随着每次发布变化怎么办?
针对这个问题,构建方法不变, 变化在动态去获取每次打出来的包名, 比如说,本次打出来的报名mypackage-1.0.3-SNAPSHOT.jar 那么,先进入target目录 #先进入target目 ...
- C++编译错误 --- 成员函数定义在 .h 文件中出现重定义错误(Error LNK 2005)
今天写了一个简单的类,定义在 .h 文件中, 类很简单就将其成员函数定义在了一起(class类后面).运行的时候出现了如下图所示的编译错误(error LNK2005) 查资料,大部分都是说需要加上 ...
- django中嵌套的try-except
# 因为此时为yaml模板,而且只抓取node port,所以这样处理效率快content_dict = parse_yaml(content.replace("{{", &quo ...
- http中get,post,put,delete方法的用法以及区别
http协议是一种在网络中进行文件传送遵循的协议.一种无状态的协议.http协议服务器端不跟浏览器端建立长久的通信连接. 建立http通信之后,服务端将文件内容传送给浏览器端接收就完成一次请求.当然一 ...