用這個(gè)肯定可以了,選用測(cè)試數(shù)據(jù)
成都創(chuàng)新互聯(lián)長(zhǎng)期為上千客戶(hù)提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為田家庵企業(yè)提供專(zhuān)業(yè)的網(wǎng)站制作、成都網(wǎng)站制作,田家庵網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。
12攝氏溫度= 53.6華氏溫度
import java.util.InputMismatchException;
import java.util.Scanner;
public class Temperature {
private float temprature;//溫度數(shù)值
private char unit; //'C' for Celsius, 'F' Fahrenheit//溫度單位
public Temperature() {//無(wú)參構(gòu)造
this.temprature = 0.0F;
this.unit = 'C';
}
public Temperature(float temprature, char unit) {//2參數(shù)構(gòu)造
this.temprature = temprature;
this.unit = String.valueOf(unit).toUpperCase().charAt(0);//確保計(jì)量單位都為大寫(xiě)字//母方便后面比較
}
public static void main(String args[]){
Temperature t1 = new Temperature();//第一種構(gòu)造應(yīng)用
Temperature t2 = new Temperature(0.0F, 'c');//第二種構(gòu)造
getTemperatureValueFromInput(t1, t2);//接收鍵盤(pán)輸入保存溫度數(shù)
getTemperaturUnitFromInput(t1, t2);//接收鍵盤(pán)輸入保存溫度單位
System.out.println("Tempearture 1 is: " + t1.toString());//輸出要比較的溫度1
System.out.println("Tempearture 2 is: " + t2.toString());//輸出要比較的溫度2
System.out.println(t1.toString() + " = " + t2.toString() + "? "+ t1.equal(t2));//相等么
System.out.println(t1.toString() + " " + t2.toString() + "? "+ t1.isHigher(t2));//大于么?
System.out.println(t1.toString() + " " + t2.toString() + "? "+ t1.isLower(t2));//小于?
}
//從鍵盤(pán)依次接受溫度值
private static void getTemperatureValueFromInput(Temperature t1, Temperature t2) {
// input value for temperature t1 and t2
int count = 1;
while(count = 2){
try{
System.out.println("Please input value for temperature " + count);
Scanner scanner = new Scanner(System.in);
if(count == 1){
t1.setTempratureValue(scanner.nextFloat());
}else{
t2.setTempratureValue(scanner.nextFloat());
}
count++;
}catch(InputMismatchException mismatchExp){
System.out.println("Invalid value for tempartue!");
continue;
}
}
}
//從鍵盤(pán)依次接受單位并提供相應(yīng)出錯(cuò)處理
private static void getTemperaturUnitFromInput(Temperature t1, Temperature t2) {
//input unit for temperature t1 and t2
int unitCount = 1;
while(unitCount = 2){
try{
System.out.println("Please input unit for temperature " + unitCount);
Scanner scanner = new Scanner(System.in);
String str = scanner.next();
if(str.trim().length() 1){
System.out.println("Invalid length for tempartue unit!");
continue;
}
char unit = str.trim().toUpperCase().charAt(0);
if(str.trim().equalsIgnoreCase("C") || str.trim().equalsIgnoreCase("F")){
if(unitCount == 1){
t1.setUnit(unit);
}else{
t2.setUnit(unit);
}
}else{
System.out.println("Invalid unit character for tempartue unit!");
continue;
}
unitCount++;
}catch(InputMismatchException mismatchExp){
System.out.println("Invalid value for tempartue unit!");
continue;
}
}
}
//轉(zhuǎn)換成攝氏溫度
public Temperature toCelsius(){
if(unit == 'C'){
return this;
}else{
return new Temperature((float)5F*(temprature - 32F)/9F, 'C');
}
}
//轉(zhuǎn)換成華氏溫度
public Temperature toFahrenheit(){
if(unit == 'F'){
return this;
}else{
return new Temperature((float)(9F*(temprature)/5F)+32F, 'F');
}
}
public void setTempratureValue(float temprature) {//設(shè)置溫度值
this.temprature = temprature;
}
public void setUnit(char unit) {//設(shè)置單位
this.unit = unit;
}
public void setTemprature(float value, char unit){
this.temprature = value;
this.unit = unit;
}
public boolean equal(Temperature t2){//判斷相等
t2 = convertToSameUnit(t2);
return t2.temprature == this.temprature;
}
public boolean isHigher(Temperature t2){//判斷大于
t2 = convertToSameUnit(t2);
return this.temprature t2.temprature;
}
public boolean isLower(Temperature t2){//判斷小魚(yú)
t2 = convertToSameUnit(t2);
return this.temprature t2.temprature;
}
private Temperature convertToSameUnit(Temperature t2) {//轉(zhuǎn)換成同樣計(jì)量單位
if(t2.unit != unit){
if(t2.unit == 'C'){
return t2.toFahrenheit();
}else{
return t2.toCelsius();
}
}
return t2;
}
public String toString(){//重寫(xiě)toString方法
return temprature + " " + unit;
}
}
----------------
Please input value for temperature 1
a
Invalid value for tempartue!
Please input value for temperature 1
Please input value for temperature 2
bbbb
Invalid value for tempartue!
Please input value for temperature 2
32
Please input unit for temperature 1
a
Invalid unit character for tempartue unit!
Please input unit for temperature 1
ef
Invalid length for tempartue unit!
Please input unit for temperature 1
c
Please input unit for temperature 2
ss
Invalid length for tempartue unit!
Please input unit for temperature 2
F
Tempearture 1 is: 0.0 C
Tempearture 2 is: 32.0 F
0.0 C = 32.0 F? true
0.0 C 32.0 F? false
0.0 C 32.0 F? false
-----測(cè)試結(jié)果2
Please input value for temperature 1
12
Please input value for temperature 2
66
Please input unit for temperature 1
c
Please input unit for temperature 2
f
Tempearture 1 is: 12.0 C
Tempearture 2 is: 66.0 F
12.0 C = 66.0 F? false
12.0 C 66.0 F? false
12.0 C 66.0 F? true
------測(cè)試結(jié)果3
Please input value for temperature 1
12
Please input value for temperature 2
52
Please input unit for temperature 1
c
Please input unit for temperature 2
f
Tempearture 1 is: 12.0 C
Tempearture 2 is: 52.0 F
12.0 C = 52.0 F? false
12.0 C 52.0 F? true
12.0 C 52.0 F? false
親,代碼自己寫(xiě)哦,這里是思路:新建一個(gè)類(lèi),實(shí)現(xiàn)runnable接口,重寫(xiě)run方法,該類(lèi)有兩個(gè)主要成員變量(其他按需要添加),小魚(yú)仔的y坐標(biāo)和x坐標(biāo),一個(gè)方法paintfish(Graphics g){}(隨意,必須有畫(huà)筆Graphics g),如果圖片上的兩條小魚(yú)仔是同一張圖片那么用這個(gè)方法去畫(huà)g.drawImage(img, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, observer);具體用法查看API,這里不做解釋?zhuān)诵脑趓un方法,先獲得窗體寬度,判斷如果小魚(yú)仔已經(jīng)游出了窗體外,重置位置(當(dāng)然你想讓他再往回游也可以),速度的控制通過(guò)一個(gè)int型變量來(lái)實(shí)現(xiàn)初始值1000(隨意,數(shù)值越小游得越快),希望對(duì)你有幫助,有問(wèn)題可以繼續(xù)提問(wèn)
應(yīng)該是implements一個(gè)runnable
然后在run里寫(xiě)代碼。
long time1 ;
while(true){//自己在循環(huán)里設(shè)置退出循環(huán)的條件。
time1 = System.currentTimeMillis();
x++;//這里隨便寫(xiě)了,每次循環(huán)改變一次位置就是動(dòng)畫(huà)了。
long elapsed = System.currentTimeMillis() - time1;
if(elapsed50){//每幀固定50毫秒
sleep(50-elapsed);//休眠,以便每幀都可以達(dá)到50
}
}
圖片定義、載入,定義在類(lèi),,,,,使用定時(shí)器、或線(xiàn)程,不斷繪不同的圖片
~~~~
快速計(jì)算平方數(shù)可以使用這樣一個(gè)遞推公式:n 的平方數(shù),和 n-1?的平方數(shù)的關(guān)系為 n^2 - (n-1)^2 = 2n - 1 ,也就是說(shuō)要計(jì)算 n?的平方數(shù),只需要將 n-1?的平方數(shù)加上 2n-1?即可,所以程序可以這樣來(lái)寫(xiě):
首先找到 Long.MAX_VALUE?的開(kāi)方這個(gè)數(shù),向下取整得到 n-1,它的平方就是小于 Long.MAX_VALUE?的最后一個(gè)平方數(shù),因此首先要計(jì)算一下它的平方?s0。之后使用遞推公式,n^2 = s+2*n-1?即得到了大于 Long.MAX_VALUE?的第一個(gè)平方數(shù) s1,依次循環(huán)即可得到最終結(jié)果,代碼如下:
import?java.math.BigInteger;
/**
*?Created?by?魚(yú)魚(yú)FrankFLY
*?2019/5/31~19:15
*/
public?class?Exc10_17?{
public?static?void?main(String[]?args)?{
long?n0?=?0;?//?n0?即?n-1
n0?=?(long)?Math.sqrt(Long.MAX_VALUE);?//?計(jì)算?Long.MAX_VALUE?開(kāi)方并向下取整,得到?n0
BigInteger?s0?=?new?BigInteger((n0?*?n0)?+?"");?//?計(jì)算小于?Long.MAX_VALUE?的最后一個(gè)平方數(shù)
BigInteger?n?=?new?BigInteger((n0?+?1)?+?"");?//?n
BigInteger?s?=?new?BigInteger(s0?+?"");?//?平方數(shù),從?s0?開(kāi)始計(jì)算
final?BigInteger?one?=?new?BigInteger("1");?//?常數(shù)?1
final?BigInteger?two?=?new?BigInteger("2");?//?常數(shù)?2
final?BigInteger?None?=?new?BigInteger("-1");?//?常數(shù)?-1
for?(int?i?=?0;?i??10;?i++)?{?//?循環(huán)?10?次
//?n^2?=?(n-1)^2?+?n*2?-?1
s?=?s.add(n.multiply(two).add(None));???//?計(jì)算?n?的平方
n?=?n.add(one);?//?得到?n+1
System.out.println(s);?//?輸出
}
}
}
結(jié)果截圖:
該回答來(lái)自?魚(yú)魚(yú)FrankFLY,任何模仿和抄襲的回答都將追責(zé)。
當(dāng)前標(biāo)題:實(shí)現(xiàn)魚(yú)翻滾的java代碼 實(shí)現(xiàn)魚(yú)翻滾的java代碼是什么
文章源于:http://www.chinadenli.net/article48/dooghhp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、面包屑導(dǎo)航、云服務(wù)器、微信公眾號(hào)、網(wǎng)站策劃、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)