導航:首頁 > 數據處理 > 數據類型不知道怎麼比較大小

數據類型不知道怎麼比較大小

發布時間:2023-05-28 00:56:40

① 在java的程序里date類型怎麼比較大小呀

有兩個方法:

方法一:

兩個Date類型的變數可以通過compareTo方法來比較。此方法的描述是這樣的:如果參數 Date 等於此 Date,則返回值 0;如果此 Date 在 Date 參數之前,則返回小於 0 的值;如果此 Date 在 Date 參數之後,則返回大於 0 的值。

(1)數據類型不知道怎麼比較大小擴展閱讀:

Date類可以在java.util包中找到,用一個long類型的值表示一個指定的時刻。它山蠢的一個有用的構造函數是Date(),它創建一個表示創建時刻的對象。

getTime()方法返回Date對象的long值。在下面的程序中,我使用Date()構造函數創建一個表示程序運行時刻的對象,並且利用getTime()方法找到這個日期代表的毫秒襲穗數量:

import java.util.*;

public class Now {

public static void main(String[] args) {

Date now = new Date();

long nowLong = now.getTime();

System.out.println("Value is " + nowLong);

}

}

參拍唯卜考資料來源:網路——java日期函數

② 在JAVA中怎麼比較Double類型數據的大小

Double是一個包裝類,不是基本類型,和double是有區別,你可以把Double就看成歲雀兆一個普通的類型,所以類型在比較時都應該乎租用equals

兩個對象通過==比都是歲此不一樣的,所以對象應該用equals比

③ c語言中double類型值的大小比較

由於double浮點數的精度問題,所以在比較大小的時候,不能像int整數型那樣,直接if(a==b),if(a<b),if(a>b)。

要使用一個精度EPS:

const double EPS = 1e-6; //一般這樣子就夠,但有時具體題目要考慮是否要更小的 ;

if(fabs(a-b) < EPS) //判斷是否相等 ;

if(a > b+EPS) // 判斷a是否棗游大於b,因為大掘岩碧的肯定大,所以即使你小的加上,還是會更大 。

(3)數據類型不知道怎麼比較大小擴展閱讀

JAVA double類型比較大小

@org.junit.Test

public void Test(){

BigDecimal big = new BigDecimal(1);

BigDecimal Graphicprice = new BigDecimal(0.01);//圖文價格

BigDecimal Speechprice = new BigDecimal(0.02);//語音價格

BigDecimal Videoprice = new BigDecimal(1);//視頻價格

System.out.println(Graphicprice + " " + Speechprice +" " + Videoprice);

if(Graphicprice.compareTo(big)<0 || Graphicprice.compareTo(big)==0 ||

Speechprice.compareTo(big)<0 || Speechprice.compareTo(big)==0 ||

Videoprice.compareTo(big)<判舉0 || Videoprice.compareTo(big)==0){

System.out.println("ok");

}

}

④ 如何比較兩個double型數據的大小

將兩個double類型的變數相減,然後判斷它們的差在培蠢一定的范圍內備穗就認為相等,否則根據相減的結果的符號來判斷大小。

比如:double d1,d2;
const double d = 0.0001;

if(d1 - d2 > -d && d1 - d2 < d);
認配滾陪為d1與d2相等,否則不相等

⑤ 在c語言編程中float類型怎麼比較大小

在編程時比較大於或小於時,與整數的比較方法相同。只是比較實數的大小時,由於一般情況下一個實數不能用有限位的二進製表示,所以會存在誤差。當我們要比較二個實數是否相等時,不要使用==的比較運算符,而是用二敬團個實數差的絕對值是否小於一個我們限定的值。(比如在亮畝橘比較二人的收入差別時,只要差別小於0.001元,就可認定他們的收入相等了)。

使用實數的絕對值函數時,要包含math.h頭文件。
#include <math.h>

float x,y;
........
if(fabs(x-y)<耐缺1e-6)printf("x=y\n"); //根據場合,需要時也可使用<1e-8等等
else if(x>y)printf("x>y\n");
else printf("x<y\n");

⑥ java中long型怎麼比較大小

通過關系運算符【等於符號(==),不等於昌野符號(!=) ,大於符號(>), 小於符號(<),大於等戚滲於符號(>=) ,小於等於符號(<=) 】進行大小高迅脊比較。

例如

longa=2;
longb=2;
if(a<b){//如果a比b小
}

⑦ 在JAVA中怎麼比較Double類型數據的大小

你如果是要普通比較直接用數學符號即可,指的在其jvm允許的范圍內如果,你是要很准確的精度比較運算,由於精度問題,可能會有誤差,建議使用BigDecimal類型!

//普通比較
Doubleobj1=newDouble("0.001");
Doubleobj2=newDouble("0.0011");
obj1.compareTo(obj2);

//精度准確比較
doublea=obj1;
double鎮握b=obj2;
BigDecimaldata1=newBigDecimal(a);
BigDecimaldata2=newBigDecimal(b);
data1.compareTo(data2);

//該方法兩種類都有
publicintcompareTo(BigDecimalval)
/*將此BigDecimal與指定的BigDecimal比較。根據此方法,值相等但具有不同標度的兩個BigDecimal對象(如,2.0和2.00)被認為是相等的。相對六個boolean比較運算符(<,==,>,>=,!=,<=)中每一個運算符的各個方法,優先提供此御磨慶方法。
*參數:val-將此BigDecimal與之比較的BigDecimal。
*返回:當此游鉛BigDecimal在數字上小於、等於或大於val時,返回-1、0或1。
*/

⑧ 怎麼比較兩個字元串的大小

兩個字元串比較大小:

一、可以用compareTo()方法,另外還有compareToIgnoreCase(String)忽略大小寫及compareTo(object string)這些方法返回值是int,以compareTo()方法為例:

1.如果字元串相等返回值為0,不等返回其他數值。

比較方法是先比較對應字元的大小(Ascall嗎順序),從第一個字母開始比較。

2.如果第一個字元和參數的第一個字元不等,結束比較,返回他們之間的差值(ascii碼值)

(負值前字元串的值小於後字元串,正值前字元串大於後字元串)

3.如果第一個字元和參數的第一個字元相等,則以第二個字元和參數的第二個字元做比較,

以此類推,直至比較的字元或被比較的字元有一方全比較完,這時就比較字元的長度.

例如:

String s1="abc";

String s2="abcd";

String s3="abcdfg";

String s4="1bcdfg";

String s5="cdfg";

System.out.println(s1.compareTo(s2));//-1(前面相等,s1長度小1)

System.out.println(s1.compareTo(s3));//-3(前面相等,s1長度小3)

System.out.println(s1.compareTo(s4));//48("a"的ASCII碼是97,"1"的的ASCII碼是49,所以返回48)

System.out.println(s1.compareTo(s5));//-2("a"的ASCII碼是97,"c"的ASCII碼是99,所以返回-2)

二、還可以用「==」和.equals()方法判斷大小:

1.「==」是一個判斷相等早者的運算符,如果兩邊是基本數據類型,它判斷的是值;如果兩邊是復合型數據類型(類類型),它判斷的是地址;地址相同,內容一定相同,地址不同,內容不一定相同。

2..equals()方法只能判斷復合型數據類型,由於繼承Object類,默認判斷的是兩邊在內存的地址,判斷結果和「==」一樣,但在一些其他的類庫中equals()被重寫,例如String,Integer,Data等類中有其自身的實現,比較內容就不是地址了。

例如:

String str1=new String("hello");

String str2="hello";

System.out.println("str1==str2:"+(str1==str2));\false

System.out.println("str1.equals(str2):"+str1.equals(str2));\true

當他們用(==)進行比較的時候,比較的是他們在內存中的存放地址,所以,除非是同一個new出來的對象,他們的比較後的結果為true,否則比較後結果為false。

但equals()在String中畝差被重寫過了,判斷的是內容,不在是內存中的地址,所以是true。

但是String比較特殊,因為我們都知道jvm把內存分為3個區,分別是方法區,堆區和棧區。而在方法區中維護者一個String常量池,池中用來存放運行時產生的各種字元串,並且池中的內容不重復。而一般對象不在這個池中,對象放在堆里。這就需要分析String的創建方式:

1.當使用任何方式來創建一個字元串對象str=「X」時,Java運行時(運行中JVM)會拿著這個X在String池中找是否存在內容相同的字元串對象,如果不存在,則在池中創建一個字元串str,否則陸耐薯,不在池中添加。

2.Java中,只要使用new關鍵字來創建對象,則一定會(在堆區或棧區)創建一個新的對象。

3.使用直接指定或者使用純字元串串聯來創建String對象,則僅僅會檢查維護String池中的字元串,池中沒有就在池中創建一個,有則罷了!但絕不會在堆棧區再去創建該String對象。

4.使用包含變數的表達式來創建String對象,則不僅會檢查維護String池,而且還會在堆棧區創建一個String對象。

例如:

String str2="hello";

String str3="hello";

System.out.println("str3==str2:"+(str3==str2));\true

System.out.println("str3.equals(str2):"+str3.equals(str2));\true

true的原因是hello都是從常量池中取出來的,但你new出來的不管常量池中有沒有都會新建一個,地址就不一樣了。

(8)數據類型不知道怎麼比較大小擴展閱讀:

string用法

1.string strs

生成空字元串

2.string s(str)

生成字元串str的復製品

3.string s(str,stridx)

將字元串str中始於stridx的部分作為構造函數的初值

4.string(str,strbegin,strlen)

將字元串str中始於strbegin,長度為strlen的部分作為字元串初值

5.string s(cstr)

以c_string類型cstr作為字元串s的初值

6.string s(cstr,char_len)

以c_string類型cstr的前char_len個字元作為字元串s的初值

7.string s(num,c)

生成一個字元串,包含num個c字元

8.string s(strs,beg,end)

以區間[beg,end]內的字元作為字元串s的初值

例子

#include&lt;iostream&gt;

#include&lt;string&gt;

using namespace std;

int main()

{

string str("12345678");

char ch[]="abcdefgh";

string a;//定義一個空字元串

string str_1(str);//全部復制

string str_2(str,2,5);//從字元串str的第2個元素開始復制5個元素給str_2

string str_3(ch,5);//將字元串ch的前5個元素賦值給str_3

string str_4(5,'X');//將5個'X'組合賦值給str_4

string str_5(str.begin(),str.end());//復制str所有元素給str_5

cout&lt;&lt;str&lt;&lt;endl;

cout&lt;&lt;a&lt;&lt;endl;

cout&lt;&lt;str_1&lt;&lt;endl;

cout&lt;&lt;str_2&lt;&lt;endl;

cout&lt;&lt;str_3&lt;&lt;endl;

cout&lt;&lt;str_4&lt;&lt;endl;

cout&lt;&lt;str_5&lt;&lt;endl;

return 0;

}

⑨ java中不同類型數比大小的程序代碼

可以使用java.math.BigDecimal類型,把不冊搜同類型的數統一成這個類型肢姿李,然後用compareTo方法比較,1、0、-1分別表示大於、等於、小於,例如:比較1.22 和 5,類聲明和main方法聲明略,直接寫內容
BigDecimal num1 = new BigDecimal(1.22);
BigDecimal num2 = new BigDecimal(5);
if(num1.compareTo(num2) > 0){
// 1.22比5大
} else if (num1.compareTo(num2) < 0){
/歷遲/ 1.22比5小
} else {
// 1.22與5相等
}

閱讀全文

與數據類型不知道怎麼比較大小相關的資料

熱點內容
外匯期貨交易一手可以賺多少 瀏覽:468
茶葉應用於哪些產品 瀏覽:641
期貨產品什麼時間開始的 瀏覽:210
和平精英如何提倡計量技術 瀏覽:432
麥吉麗代理費什麼時候能退 瀏覽:724
如何把自啟動程序變為服務 瀏覽:29
比起不回信息收到在忙哪個更傷心 瀏覽:657
龍華市場到深圳西站坐什麼車 瀏覽:657
怎麼回復百合信息 瀏覽:615
隨州東興市場哪裡有修摩托車的 瀏覽:103
怎麼看下個交易日的開盤價位 瀏覽:782
交警走程序抽血檢驗什麼 瀏覽:898
成都建材市場前景怎麼樣 瀏覽:6
神州技術學院有哪些專業 瀏覽:462
代理國庫稅收收繳什麼時候生效 瀏覽:279
為什麼做趨勢交易很多人都沒錢 瀏覽:122
小程序的diy是什麼意思 瀏覽:330
產品經理ppt怎麼寫 瀏覽:253
技術培訓機構如何做 瀏覽:725
揚州駕駛求職市場前景如何 瀏覽:999