java寫朋友圈代碼 java實現(xiàn)朋友圈

n個小孩圍成一個圈,從一開始數(shù),數(shù)到七的人出列,求依次出列的次序. 求用java寫

這個問題是很經(jīng)典的編程問題,叫約瑟夫環(huán)問題,我之前有寫程序,所以直接拷給你吧,我初始的n值為13,你也可以自己修改

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、龍華網(wǎng)絡(luò)推廣、微信小程序定制開發(fā)、龍華網(wǎng)絡(luò)營銷、龍華企業(yè)策劃、龍華品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供龍華建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:muchs.cn

//YueSeFu.java

public class YueSeFu {

public static void main(String[] args)

{

final int n=13,s=1,m=5;//n為總?cè)藬?shù),從第1個人開始報數(shù),報數(shù)到m的出圈

int[] p=new int[n];//數(shù)組p用于標記已出圈的人

int[] q=new int[n];//數(shù)組q存放出隊的順序

int i,j,k,N=0;

k=s-2;//k從1開始數(shù)出圈人的下標

for(i=1;i=n;i++)

{

for(j=1;j=m;j++)//從1到m報數(shù),計算出圈人的下標k

{

if(k==n-1)//當(dāng)出圈人的下標達到末尾時

{

k=0;//出圈人的下標從0開始

}

else

k++;//否則下標+1

if(p[k]==1)//若平p[k]=1,說明下標為k的人已出圈

{

j--;//由于讓過已出圈的人,所以j要-1,以保證每次數(shù)過m個人

}

}

p[k]=1;//將下標為k的數(shù)組元素置1,表示出圈

q[N++]=k+1;//將下標為k的人的編號k+1,存入數(shù)組元素q[N]中

}

System.out.println("出圈順序為:");

for(i=0;in;i++)

{

System.out.print(q[i]+" ");

}

}

}

java編程,100個小朋友圍成一圈,各個孩子的編號為1到100,

用鏈表結(jié)構(gòu)來解決問題

ListInteger list =new LinkedListInteger();

for(int i=1 ; i= 100 ; i++) list.add(i); //添加100個小盆友的編號對應(yīng)每一個人

int j =0; //記錄報數(shù)次數(shù)

while(list.size!=1){ //list中剩下一個人得時候跳出循環(huán)

int k =list.remove(0) ; //刪除第一個元素即報數(shù)的小朋友

j++; //每次報數(shù)后 j+1

if(j%3!=0) list.add(k) ; //如果j不是3得倍數(shù) 把剛報完數(shù)字的小朋友放在隊伍的最后面

}

System.out.println(list.get(0)); //剩下的最后一個就是我們需要的編號

這樣就實現(xiàn)了每次報數(shù)為3的小朋友退出

java怎么實現(xiàn)微信分享到朋友圈功能

申請應(yīng)用 AppKey

申請方法:訪問友推網(wǎng)站后臺,登錄后進入應(yīng)用列表,添加需要集成友推組件的 App,如下圖,添加成功后可獲取應(yīng)用的 AppKey。

如何把app分享到微信

2

申請社交平臺appkey

集成前您需要為您的應(yīng)用在各大社交網(wǎng)站的開放平臺申請賬號并通過審核,否則只能調(diào)用系統(tǒng)的分享菜單,無法跟蹤分享的回調(diào)事件及統(tǒng)計平臺

如何把app分享到微信

3

引用youtui庫項目

將youtui-lib項目庫和應(yīng)用工程放在同一個目錄下

在 Package Explorer 中右鍵點擊工程的根目錄,選擇 Properties(屬性),然后點擊,在Android選項點擊Add添加youtui-lib

如何把app分享到微信

4

注冊需要分享的平臺

1.配置各分享平臺key,該配置文件為youtui_sdk.xml,配置完放入工程的assets文件夾。

2.如果需要分享到哪個平臺就將該平臺的Enable屬性設(shè)置為true.

3.如果需要將某個平臺排列到前面,只需要改變它在youtui_sdk.xml文件中的位置即可。

5

各平臺需要注意的事項:

新浪微博:

新浪微博需要驗證應(yīng)用簽名,請一定要在新浪開放平臺管理中心應(yīng)用信息 - 基本信息 - Android簽名包名信息 配置該信息

每次包名變化或者使用的.keystore變化都會導(dǎo)致應(yīng)用簽名變化,請重新到新浪微博開放平臺設(shè)置。

運行Demo時如果重新編譯,因為使用的.keystore文件變化也會導(dǎo)致應(yīng)用簽名變化,導(dǎo)致Demo新浪微博分享無法正常工作,請運行Demo時使用Demo工程包中提供的debug.keystore替換C:\Users\Administrator.android中的debug.keystore文件

微信和朋友圈:

微信和朋友圈也需要驗證應(yīng)用簽名,請在微信開放平臺管理中心修改應(yīng)用 - 開發(fā)信息配置。

QQ和QQ空間:

QQ和QQ空間使用的是騰訊開放平臺api,請在騰訊開放平臺申請賬號和注冊應(yīng)用,請不要使用QQ互聯(lián)(用于網(wǎng)站賬號登錄)的配置,雖然都是騰訊的,但是兩個平臺并不通用,除了需要在youtui_sdk.xml配置信息,還需要在manifest文件中的android:scheme中的tencent后的一串?dāng)?shù)字換成自己應(yīng)用的appid。

?xml version="1.0" encoding="utf-8"?

最后一行配置說明:選用調(diào)用系統(tǒng)分享菜單功能

在AndroidManifest.xml 注冊權(quán)限

在 AndroidManifest.xml 注冊需要的Activity

微信和朋友圈回調(diào)設(shè)置

如果需要分享微信和朋友圈,必需建一個 應(yīng)用包名+ .wxapi 的包,在該包下建 WXEntryActivity.java,將該類繼承cn.bidaround.youtui.wxapi.WXEntryActivity即可(里面不用寫代碼)

public class WXEntryActivity extends cn.bidaround.youtui.wxapi.WXEntryActivity { }

如圖:(將com.xingxinglangtuoche替換成你應(yīng)用的package名,微信回調(diào)會使用到)

如何把app分享到微信

初始化友推

開發(fā)者請在自己的程序開始,最好是在MainActivity的onCreate方法調(diào)用YtTemplate.init(this)初始化友推sdk,這樣友推sdk才能進行后續(xù)調(diào)用(否則分享等操作會出現(xiàn)空指針異常),例如:

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); YtTemplate.init(this);/初始化友推/ initView(); } 應(yīng)用退出時:

在您項目的出口Activity的 onDestroy 方法的第一行插入下面的代碼 YtTemplate.release(this); 此方法用于釋放內(nèi)存,統(tǒng)計用戶使用情況,一旦調(diào)用了release,就必須重新調(diào)用init才能使用友推的功能,否則會出現(xiàn)空指針異常;

創(chuàng)建 ShareData 實例,調(diào)用該實例的set方法設(shè)置需要分享的數(shù)據(jù): 創(chuàng)建ShareData實例,調(diào)用該實例的set方法設(shè)置自己需要分享的數(shù)據(jù),關(guān)于該實例具體內(nèi)容見下文,如果只是分享應(yīng)用則只需要設(shè)置 setIsAppShare(true) 就可以分享應(yīng)用在友推后臺填寫的信息和下載鏈接。

ShareData 包含的字段:

isAppShare text imagePath imageUrl description title target_url 判斷是否為分享應(yīng)用 待分享的文字,短信要小于70個字符,微博要小于140個字符,如果需要分享鏈接,最好將鏈接url放在最后 待分享的本地圖片地址,分享圖片的話需要在本地和網(wǎng)絡(luò)圖片中選一,如果都有則優(yōu)先分享本地圖片 待分享網(wǎng)絡(luò)圖片url,分享圖片的話需要在本地和網(wǎng)絡(luò)圖片中選一,如果都有則優(yōu)先分享本地圖片 待分享內(nèi)容的描述 待分享內(nèi)容的標題 待分享內(nèi)容的跳轉(zhuǎn)鏈接

通過創(chuàng)建該類實例,調(diào)用實例的set方法設(shè)置這些參數(shù),例如:

ShareData shareData = new ShareData(); shareData.isAppShare = false;//設(shè)置為true則分享的信息從友推后臺填寫的應(yīng)用信息中讀取,可動態(tài)更新,后面的值不用設(shè)置。 shareData.setDescription("友推積分組件"); shareData.setTitle("友推分享"); shareData.setText("通過友推積分組件,開發(fā)者幾行代碼就可以為應(yīng)用添加分享送積分功能,并提供詳盡的后臺統(tǒng)計數(shù)據(jù),除了本身具備的分享功能外,開發(fā)者也可將積分功能單獨集成在已有分享組件的app上,");

shareData.setTarget_url("");

shareData.setImageUrl("");

shareData.setImagePath("");

各個平臺分享數(shù)據(jù)的限制和注意事項:

因為各個平臺的分享限制,請分享時盡量分享圖片+鏈接,依靠鏈接來了解更多信息

1) 微信 朋友圈 微信分享為linkcard形式,超出的文字部分不會顯示

2) 新浪微博 很低版本的新浪微博不支持發(fā)多類型微博,進行圖文分享時只會分享圖片,新浪微博分享消息最長為140字

3) QQ、QQ空間 QQ分享的消息最長40字,分享的標題最長30字,多余的部分將被忽略,description將被忽略 QQ空間分享的消息最長200字,分享的標題最長600字,多余的部分將被忽略,description將被忽略

4) 騰訊微博 只有image(imagePath或imageUrl)和text被分享,其他字段忽略,騰訊微博分享消息最長為140字

5) 人人網(wǎng) 只有image(imagePath或imageUrl)和text被分享,其他字段忽略

6) 短信 只有text被分享,其他字段忽略

7) 郵件 只有text被分享,其他字段忽略

如何把app分享到微信

調(diào)用友推分享推薦組件

為應(yīng)用添加一個分享推薦按鈕,如:

如何把app分享到微信

在分享按鈕事件中調(diào)用youtui的組件即可,示例代碼:

public void onClick(View v) { if(v.getId()==R.id.popup_bt)

{ /調(diào)用友推分享推薦組件,YouTuiViewType類的常量為分享樣式參數(shù),目前支持白色列表和黑色網(wǎng)格兩種/ /創(chuàng)建分享的模板,第一個參數(shù)為activity,第二個參數(shù)為分享窗口樣式,第三個參數(shù)為是否需要積分/

YtTemplate blackTemp = new YtTemplate(this, YouTuiViewType.BLACK_POPUP,false); //黑色網(wǎng)格樣式不需要積分活動 /YtTemplate blackTemp = new YtTemplate(this, YouTuiViewType.WHITE_LIST,ture);/ //白色列表樣式需要積分活動

ShareData shareData = new ShareData();

shareData.isAppShare = false;//設(shè)置為true則分享的信息從友推后臺填寫的應(yīng)用信息中讀取,可動態(tài)更新后面的值不用設(shè)置。

shareData.setDescription("友推積分組件");

shareData.setTitle("友推分享");

shareData.setText("通過友推積分組件,開發(fā)者幾行代碼就可以為應(yīng)用添加分享送積分功能,并提供詳盡的后臺統(tǒng)計數(shù)據(jù),除了本身具備的分享功能外,開發(fā)者也可將積分功能單獨集成在已有分享組件的app上,快來試試吧 ");

shareData.setTarget_url("");

shareData.setImageUrl("");

shareData.setImagePath("");

blackTemp.setShareData(shareData);//設(shè)置默認的分享數(shù)據(jù);shareData 設(shè)置參看4.6

//**如果要為某個平臺設(shè)置不一樣的分享信息。則單獨設(shè)置*/ //blackTemp.addData(YtPlatform.PLATFORM_QQ, shareData); //調(diào)出分享窗口 blackTemp.show();

//如果需要自定義分享事件,可以創(chuàng)建監(jiān)聽事件,然后在回調(diào)中處理 YtShareListener listener1 = new YtShareListener() {

@Override

public void onSuccess(ErrorInfo arg0)

{

}

@Override public void onPreShare()

{

}

@Override

public void onError(ErrorInfo arg0)

{

}

@Override

public void onCancel() {

}

};//給新浪微博添加分享監(jiān)聽 blackTemp.addListener(YtPlatform.PLATFORM_SINAWEIBO, listener1);

//給QQ添加分享監(jiān)聽 //

blackTemp.addListener(YtPlatform.PLATFORM_QQ, listener2); }

新聞標題:java寫朋友圈代碼 java實現(xiàn)朋友圈
路徑分享:http://muchs.cn/article16/doecpdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機網(wǎng)站建設(shè)、全網(wǎng)營銷推廣Google、、云服務(wù)器、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)