for和while如何相互轉換

2021-10-02 19:12:48 字數 1698 閱讀 3452

博主**:

for

(int i =

1; i <

10; i++

) system.out.

println()

;}system.out.

println

("-------->");

//轉換成while迴圈

int k =1;

while

(k <10)

system.out.

println()

; k++

;}

上面**效果一樣,都是輸出(乘法口訣外層):

1	

1 2

1 2 3

1 2 3 4

1 2 3 4 5

1 2 3 4 5 6

1 2 3 4 5 6 7

1 2 3 4 5 6 7 8

1 2 3 4 5 6 7 8 9

for迴圈的格式是:for([初始化];[判斷條件];[條件改變方式]) 其中()裡面除了兩個引號,其他不是非必須的 while更簡單就括號裡面判斷條件;互相轉換規律時,把for迴圈裡面初始化寫到外面,while括號裡面只寫判斷語句,條件改變方式寫到while迴圈體中,這樣就可以達到for迴圈的效果;

int k =1;

while

(k <10)

system.out.

println()

; k++

;}

但while迴圈語句更容易控制,只需驗證括號裡面布林表示式是否成立就行,至於判斷條件的變化,可以放到迴圈體裡面來實現,並能靈活的加上限制條件(if),如實現 列印如下形狀的資料,用while迴圈更合適;

1	

2 3

4 5 6

7 8 9 10

11 12 13 14 15

int line =1;

int column =1;

int index =1;

while

(index<=15)

column=1;

line++;}

system.out.

print

(index+

"\t");

index++

; column++

;}

如果列印乙個倒三角,更簡單因為line和column起始值不同,不用做index != xx,這種判斷;這裡面是避免第一行是列印的是乙個空行。

@test

public

void

shownum()

system.out.

print

(index+

" ")

; index--

; column++;}

}

while 布林表示式的靈活性還有用變數來表示,如 boolean flag = true; while(flag),在迴圈體中,出現某種情況讓flag值變為false,即可實現中斷迴圈的功能;或者更簡單,出現符合條件後用break跳出即可。另外不管是何種迴圈控制器 都可以用break或continue。

string和wstring相互轉換

第一種方法 呼叫widechartomultibyte 和multibytetowidechar 如下 關於詳細的解釋,可以參考 windows核心程式設計 include include using namespace std converting a wchar string to a ansi...

DataTable 和List 相互轉換

由於c 3.0出現了擴充套件方法 我們可以通過這樣乙個特性來簡化我們的開發.datatable 轉換為list的我們可以通過擴充套件datatable來簡化 public static class datatableextensions 建立返回的集合 list tresult oblist new...

BitMap 和 Drawable 相互轉換

android開發過成中時而需要bitmap 和drable之間的轉換 url urlimage new url imagepath urlconnection mconnection urlimage.openconnection mconnection.connect 獲得連線 inputstr...