java 百分比用什么类型,JAVA怎么计算百分比
各位老铁们,大家好,今天由我来为大家分享java 百分比用什么类型,以及JAVA怎么计算百分比的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!
如何查看java虚拟机堆内存的参数值
请确保java_home/bin配置到path环境变量下,因为这些工具都在jdk的bin目录下
jps(JVM Process Status Tool):JVM机进程状况工具
用来查看基于HotSpot JVM里面所有进程的具体状态,包括进程ID,进程启动的路径等等。与unix上的ps类似,用来显示本地有权限的java进程,可以查看本地运行着几个java程序,并显示他们的进程号。使用jps时,不需要传递进程号做为参数。
Jps也可以显示远程系统上的JAVA进程,这需要远程服务上开启了jstat服务,以及RMI注及服务,不过常用都是对本对的JAVA进程的查看。
命令格式:jps [ options ] [ hostid ]
常用参数说明:
-m输出传递给main方法的参数,如果是内嵌的JVM则输出为null。
-l输出应用程序主类的完整包名,或者是应用程序JAR文件的完整路径。
-v输出传给JVM的参数。
例如:
C:\Users\Administrator>jps-lmv
1796-Dosgi.requiredJavaVersion=1.5-Xms40m-Xmx512m-XX:MaxPermSize=256m
7340 sun.tools.jps.Jps-lmv-Denv.class.path=.;D:\DevTools\VM\jdk1.6.0_31\\lib\dt.jar;D:\DevTools\VM\jdk1.6.0_31\\lib\tools.jar;-Dapplication.home=D:\DevTools\VM\jdk1.6.0_31-Xms8m
其中pid为1796的是我的eclipse进程,pid为7340的是jps命令本身的进程
jinfo(Configuration Info for Java):JVM配置信息工具
可以输出并修改运行时的java进程的opts。用处比较简单,用于输出JAVA系统参数及命令行参数
命令格式:jinfo [ options ] [ pid ]
常用参数说明:
-flag输出,修改,JVM命令行参数
例如:
C:\Users\Administrator>jinfo 1796
将会打印出很多jvm运行时参数信息,由于比较长这里不再打印出来,可以自己试试,内容一目了然
Jstack(Stack Trace for Java):JVM堆栈跟踪工具
jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64“
命令格式:jstack [ option ] pid
常用参数说明:
-F当’jstack [-l] pid’没有相应的时候强制打印栈信息
-l长列表.打印关于锁的附加信息,例如属于java.util.concurrent的ownable synchronizers列表.
-m打印java和native c/c++框架的所有栈信息.
-h|-help打印帮助信息
例如:
C:\Users\Administrator>jstack 1796
2013-05-22 11:42:38
Full thread dump Java HotSpot(TM) Client VM(20.6-b01 mixed mode):
"Worker-30" prio=6 tid=0x06514c00 nid=0x1018 in Object.wait() [0x056af000]
java.lang.Thread.State: TIMED_WAITING(on object monitor)
at java.lang.Object.wait(Native Method)
at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
- locked<0x1ad84a90>(a org.eclipse.core.internal.jobs.WorkerPool)
at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50)
......
......
......
......
jstat(JVM statistics Monitoriing Tool):JVM统计信息监视工具
对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控
命令格式:jstat [ option pid [interval [ s| ms ] [count] ] ]
常用参数说明:
-gcutil输出已使用空间占总空间的百分比
-gccapacity输出堆中各个区域使用到的最大和最小空间
例如:每隔1秒监控jvm内存一次,共监控5次
C:\Users\Administrator>jstat-gccapacity 1796 1s 5
NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC PGCMN PGCMX PGC PC YGC FGC
13632.0 174720.0 40896.0 4032.0 4032.0 32832.0 27328.0 349568.0 81684.0 81684.0 12288.0 262144.0 80640.0 80640.0 42 96
13632.0 174720.0 40896.0 4032.0 4032.0 32832.0 27328.0 349568.0 81684.0 81684.0 12288.0 262144.0 80640.0 80640.0 42 96
13632.0 174720.0 40896.0 4032.0 4032.0 32832.0 27328.0 349568.0 81684.0 81684.0 12288.0 262144.0 80640.0 80640.0 42 96
13632.0 174720.0 40896.0 4032.0 4032.0 32832.0 27328.0 349568.0 81684.0 81684.0 12288.0 262144.0 80640.0 80640.0 42 96
13632.0 174720.0 40896.0 4032.0 4032.0 32832.0 27328.0 349568.0 81684.0 81684.0 12288.0 262144.0 80640.0 80640.0 42 97
C:\Users\Administrator>jstat-gcutil 1796 1s 5
S0 S1 E O P YGC YGCT FGC FGCT GCT
0.00 0.00 0.52 53.35 99.77 42 0.513 99 38.119 38.632
0.00 0.00 0.52 53.35 99.77 42 0.513 99 38.119 38.632
0.00 0.00 0.52 53.35 99.77 42 0.513 99 38.119 38.632
0.00 0.00 0.52 53.35 99.77 42 0.513 99 38.119 38.632
0.00 0.00 0.52 53.35 99.77 42 0.513 99 38.119 38.632
一些术语的中文解释:
S0C:年轻代中第一个survivor(幸存区)的容量(字节)
S1C:年轻代中第二个survivor(幸存区)的容量(字节)
S0U:年轻代中第一个survivor(幸存区)目前已使用空间(字节)
S1U:年轻代中第二个survivor(幸存区)目前已使用空间(字节)
EC:年轻代中Eden(伊甸园)的容量(字节)
EU:年轻代中Eden(伊甸园)目前已使用空间(字节)
OC:Old代的容量(字节)
OU:Old代目前已使用空间(字节)
PC:Perm(持久代)的容量(字节)
PU:Perm(持久代)目前已使用空间(字节)
YGC:从应用程序启动到采样时年轻代中gc次数
YGCT:从应用程序启动到采样时年轻代中gc所用时间(s)
FGC:从应用程序启动到采样时old代(全gc)gc次数
FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s)
GCT:从应用程序启动到采样时gc用的总时间(s)
NGCMN:年轻代(young)中初始化(最小)的大小(字节)
NGCMX:年轻代(young)的最大容量(字节)
NGC:年轻代(young)中当前的容量(字节)
OGCMN:old代中初始化(最小)的大小(字节)
OGCMX:old代的最大容量(字节)
OGC:old代当前新生成的容量(字节)
PGCMN:perm代中初始化(最小)的大小(字节)
PGCMX:perm代的最大容量(字节)
PGC:perm代当前新生成的容量(字节)
S0:年轻代中第一个survivor(幸存区)已使用的占当前容量百分比
S1:年轻代中第二个survivor(幸存区)已使用的占当前容量百分比
E:年轻代中Eden(伊甸园)已使用的占当前容量百分比
O:old代已使用的占当前容量百分比
P:perm代已使用的占当前容量百分比
S0CMX:年轻代中第一个survivor(幸存区)的最大容量(字节)
S1CMX:年轻代中第二个survivor(幸存区)的最大容量(字节)
ECMX:年轻代中Eden(伊甸园)的最大容量(字节)
DSS:当前需要survivor(幸存区)的容量(字节)(Eden区已满)
TT:持有次数限制
MTT:最大持有次数限制
jmap( Memory Map for Java):JVM内存映像工具
打印出某个java进程(使用pid)内存内的所有‘对象’的情况(如:产生那些对象,及其数量)
命令格式:jmap [ option ] pid
常用参数说明:
-dump:[live,]format=b,file=<filename>使用二进制形式输出jvm的heap内容到文件中, live子选项是可选的,假如指定live选项,那么只输出活的对象到文件.
-histo[:live]打印每个class的实例数目,内存占用,类全名信息. VM的内部类名字开头会加上前缀”*”.如果live子参数加上后,只统计活的对象数量.
-F强迫.在pid没有相应的时候使用-dump或者-histo参数.在这个模式下,live子参数无效.
例如:以二进制形式输入当前堆内存映像到文件data.hprof中
jmap-dump:live,format=b,file=data.hprof 1796
生成的文件可以使用jhat工具进行分析,在OOM(内存溢出)时,分析大对象,非常有用
通过使用如下参数启动JVM,也可以获取到dump文件:
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=./java_pid<pid>.hprof
在jvm发生内存溢出时生成内存映像文件
jhat(JVM Heap Analysis Tool):JVM堆转储快照分析工具
用于对JAVA heap进行离线分析的工具,他可以对不同虚拟机中导出的heap信息文件进行分析,如LINUX上导出的文件可以拿到WINDOWS上进行分析,可以查找诸如内存方面的问题。
命令格式:jhat dumpfile(jmap生成的文件)
例如:分析jmap导出的内存映像
jhat data.hprof
执行成功后,访问http://localhost:7000即可查看内存信息,
MAT(Memory Analyzer Tool):一个基于Eclipse的内存分析工具
官网: http://www.eclipse.org/mat/
update:http://download.eclipse.org/mat/1.2/update-site/
这是eclipse的一个插件,安装后可以打开xxx.hprof文件,进行分析,比jhat更方便使用,有些时候由于线上xxx.hprof文件过大,直接使用jhat进行初步分析了,可以的话拷贝到本地分析效果更佳。
图形化监控工具:
在JDK安装目录bin下面有两个可视化监控工具
1. JConsole(Java Monitoring and Management Console)基于JMX的可视化管理工具。
2. VisualVM(All-in-one Java Troubleshooting Tool)随JDK发布的最强大的运行监视和故障处理程序。
推荐使用VisualVM,他有很多插件,可以更方便的监控运行时JVM
JAVA怎么计算百分比
int num1= 7;
int num2= 9;
//创建一个数值格式化对象
NumberFormat numberFormat= NumberFormat.getInstance();
//设置精确到小数点后2位
public String getPercent(int x,int total){
String result="";//接受百分比的值
double x_double=x*1.0;
double tempresult=x/total;
numberFormat.setMaximumFractionDigits(2);
String result= numberFormat.format((float) num1/(float) num2* 100);
System.out.println("num1和num2的百分比为:"+ result+"%");
比较运算符
比较运算符属于二元运算符,用于程序中的变量之间,变量和自变量之间以及其他类型的信息之间的比较。比较运算符的运算结果是boolean型。当运算符对应的关系成立时,运算的结果为true,否则为false。比较运算符共有6个,通常作为判断的依据用于条件语句中。
Java解释器在没有生成任何对象的情况下,以main作为入口来执行程序。每个类中可以定义多个方法,但main方法只能有一个。关键字public表示访问权限,指明所有的类都可以使用这一方法。
以上内容参考:百度百科-Java
成绩用什么数据类型
问题一:sql server中的成绩字段的数据类型一般是什么?可以用numeric(5,2)
或者decimal(5,2)
前面5表示总的位数,后面的2表示精度(小数点后的位数).比如 99.12, 100.00, 67.24
如果想精确到小数点后1位,可以修改为numeric(4,1)或decimal伐4,1)比如: 99.1, 100.0, 67.2
问题二:建立数据库(表)时%(百分数)用的是什么数据类型?数据库里没有百分数这样的类型,表示数字的有float,decimal等类型,表示文本的有varchar,char,ext等类型,如果你想存百分比的话,最好是建个float字段,把百分比计算成数值存进去,如果你非要存到库里面显示0%-100%这样的数值的话,那就用varchar类型的就可以了,取出的时候,你在换算就可以了。
问题三:程序设计中分数用什么类型变量分数用整数的除法表示,没有单独的变量类型.为了保证精度,需要定义8位16位...64位的整数或者浮点数表示.
问题四:要怎么判断什么时候用什么数据类型?定义:数据类型在数据结构中的定义是一个值的***以及定义在这个值集上的一组操作。
数据类型分类:
c语言基本数据类型short、int、long、char、float、doubleJava基本数据类型:byte short int long float double boolean char,String是类类型
sql数据类型:int、varchar、float、double、char、bit、datetime等
以java为例,定义学生姓名可以用String类型 public string name;定义年龄,可以用int整型类型,int age= 18;
定义考试成绩,可以用float或者double类型,定义性别,可以用char,也可以用bit,定位好其使用范围和作业即可
问题五:SQL储存分数用什么数据类型?为什么要村分数,你可以分两个字段,分别存分子和分母,展现的时候,拼接一下,计算就可以直接计算了
列:
select 1000*fz/fm,cast(fz as varchar(10))+'/'+cast(fm as varchar(10))
from t
问题六:建立数据库(表)时%(百分数)用的是什么数据类型?如果你要计算就建议用float,存成小数,使用的时候*100跟字符串加上'%唬9;,如果不需要计算就存储为字符串。
问题七:JAVA中有分数数据类型吗?没有分数类型,而且在计算中如果出现较长的小数或者无限循环、不循环小数,都会丢失精度,每个数据类型都有自己的精度范围,超出部分就丢失了
问题八:建立数据库(表)时%(百分数)用的是什么数据类型? gn_gr_no M010.GR_NO%type;
你说的是这样的吗?
这样就是定义一鼎东西和M010这个表的GR_NO字段一样的类型一样的大小!~
问题九:计算机中编程语言中有没有分数或类似分数的数据类型?您好目前我所知道的计算机语言中没有描述分数的数据类型。
从数学角度说,分数是一个中间类型,其最终表现形式是分数所对应的小数。
语言中一般这样处理分数的问题
a等于b乘五分之四 a= b* 4/ 5;或者直观点 a= b*( 4/ 5);
a等于b乘三又五分之四 a= b*((3* 5+4)/ 5);
目前来看没有自定义分数数据类型的必要性
另外根据不同的语言不同的数据类型和内存使用方式像三分之二等分数对应的实际值也可能不同
问题十:求问spss不同的数据类型分别用什么分析方法你有两种方法,
第一种方法是改变你的气质变量的类型:每个人有四种类型的气质分数,取其中最高的分数作为他的气质类型,这样的假设是每个人只有一种主导的气质类型.这样你就需要对你的原始数据进行修改,删除每个人其他三项比较低的分数,将最高的分数换成1,修改完以后就简单多了,做方差分析即可.当然,前提是每个人都只选一种颜色.
第二种方法,在不改原始数据的基础上,你只能每一个气质类型单独列出来进行分析,比如说气质A和颜色喜好进行相关分析.但是,这就不叫相关分析了,因为颜色洗好不是连续变量,是分类变量.这不要紧,换下思路,做方差分析,其实是一个意思,问题就变成了“不同颜色的喜好在气质A上的得分是否有显著性差异?”就这样能把四种气质类型全部分析出来.
在java 中如何把一个字符串格式的百分数转换成为小数
Java API文档提供了对数值格式化的类NumberFormat。NumberFormat
是所有数值格式的抽象基类。此类提供格式化和解析数值的接口。NumberFormat
还提供了一些方法来确定哪些语言环境具有数值格式,以及它们的名称是什么。NumberFormat
可用于格式化和解析任何语言环境的数值。使代码能够完全独立于小数点、千位分隔符甚至所用特定小数位数的语言环境约定,并与数值格式是否为偶小数无关。这是一个例子:
import java.text.NumberFormat;//引入数值处理的包
import java.text.ParseException;//引入可能出现的异常包
String str="34.2%";//字符串类型的百分数
NumberFormat nf=NumberFormat.getPercentInstance();//NumberFormat是一个工厂,可以直接getXXX创建,而getPercentInstance()
是返回当前默认语言环境的百分比格式。
Number m=nf.parse(str);//提供了带有 ParsePosition和 FieldPosition的
parse和 format方法的形式,parse(xx)表示解析给定字符串开头的文本,生成一个数值。
逐步地解析字符串的各部分
System.out.println(m);//打印数值
你不必重复造轮子。
OK,关于java 百分比用什么类型和JAVA怎么计算百分比的内容到此结束了,希望对大家有所帮助。