20182311 2019-2020-1「オブジェクト指向プログラミングとデータ構造」第六実験レポート

20182311 2019-2020-1「オブジェクト指向プログラミングとデータ構造」第六実験レポート

コース:「プログラミングとデータ構造」
クラス:1823
名:コールドパンチング
学生ID:20182311の
実験先生:ジョニーの
実験日:2019年10月23日
必修/選択科目:必修

1.実験内容

  • 以下の機能を達成するために必要なチェーンの練習:
    いくつかの整数を入力するためのキーボード、リストの設立、これらの数字は、今日の時点で除去二桁順次、中にあなたの学生番号です。すべての要素のリスト、および要素の合計数の出力を印刷します。
    あなたのプログラムでは、変数名があなたの名前であり、要素の合計数を記録するために、特殊な変数名を使用してください。このステップが完了し、あなたのプログラムは、ソース・コントロール(Gitのプッシュ)にチェックイン。
  • 以下の機能を達成するために必要なチェーンの練習:
    削除、ノードの挿入を達成するために、出力動作;あなたは、その機能を拡張するプログラムに引き続き、それぞれが提出し、コードをチェックし、新しい機能を終了し、または新しいコードの10本の以上のラインを書かサーバーへのソースコード、ディスクファイルから読み込むには、このファイルには、2つの数値を持っています。デジタルファイル1から読み出され、ビット5がリストに挿入され、デジタル印刷、および要素の総数です。次の操作に進んで、このリストを保管してください。デジタル0のリストに挿入されているファイル2、および印刷番号、要素の総数から読み出さ。このリストを保持し、次の操作に進んでください。リストちょうど1から数、およびすべての印刷とデジタル要素の合計数を削除します。
  • 以下の機能を達成するために必要なチェーンの練習:
    数値のサイズに基づいてリストをソートするためにバブルソートや選択ソート方法を使用して、あなたの学生の数が単数であれば、バブルソート、選択ソートを選択するか、選択します。選別の各ラウンドにおいて、印刷要素の合計数、および現在のリストのすべての要素。
  • 実験は、アンドロイド(1)を実装し、(2)
  • Androidプラットフォーム上での実験(3)を達成するために、

2.実験方法と結果

  • リストの設立:ノードNodeクラスおよびクラスリストのリストを作成します。ヘッド・ポインタ及びポインタ一時objectlistヘッドにおける添加元素ない限り、又はヘッド・ポインタを定義し、要素自体及びノードアドレスリスト(次のノードへのポインタとして宣言されたオブジェクト変数)内の次のノードを保存します動かない、それ以外の場合は、要素が欠落しているリストを作成します。リストの各動作、一時ポインタがヘッド・ポインタから戻って横切ることができます。記録素子の総数は最後のノードへのヘッドポインタを横断するために使用することができる、合計数は横断要素の数です。プリントリスト要素は、すなわち複製toStringメソッドの、横断プロセスの各要素と、受信した文字列は、中間タブで分離することができます。

  • ノードの挿入、削除、出力動作、および挿入を達成するために、ファイルを読み取り、削除:ノードは、挿入要素がリストの後ろの損失の原因となり、挿入前の位置にノードに次のノードを示す第1のポインタを、挿入されたことに留意すべきで。指定された場所に挿入されたときに挿入方法は、そう、添字で表現位置を考慮していない書き込みを開始し、他の時間は場所を見つけるのを助けるための方法を書いて、その後、Insertメソッドを呼び出します。文字ストリームファイルそれは、結果の文字列次の動作に有利であると考えられるので、読み出し方法(リーダー)を用いて読み取ります。StringTokenizerは、文字列をカットし使用してください。

  • バブルソートを使用すると、次の2つのポインタと二つの重サイクルの比較を定義します。バブルソートと選択ソート二十から二ちょうど交換比率、または背面の区別へのすべての完成との比に仕上げました。

  • アンドリュースの実現:アンドリュースの問題が大きな問題に遭遇したファイルのパスとレイアウトです。次のバイトストリームを読んで、ディレクトリの解像度で同じレベルを持つファイルを作成するには、資産の最終的な選択を多くの方法を試してみてください。
InputStream inputStream=getAssets().open("test.txt");
int size=inputStream.available();
byte[] a=new byte[size];
inputStream.read(a);
inputStream.close();
String content=new String(a);
  • アンドリュースの実現:収穫はConstraintLayout視覚的なドラッグよりRelativeLayoutあり、それらを使用して簡単にドロップしますが、ConstraintLayout魔法の杖はかなり良いようです。

3.実験過程で発生した問題や決済処理

  • 質問1:どのようにAVDはIOストリームを読んで、問題を解決するには?
  • 問題解決方法1:Androidのスタジオでの資産のディレクトリを作成します:資産フォルダを選択し、参照リンクを参照してくださいするために、データ伝送のバイナリストリームを経由して、第二特定の操作を作成します。
  • 質問2:のonClickとonTouch違いは?
  • 问题2解决方案;onClick是触摸事件,onTouch是单击事件。onTouch比onClick多传入一个MotionEvent的对象,onClick是基于onTouch的一个拓展延申,但onTouch的优先级更高,操作也更全。发现对按钮绑定onTouch没有反应,应该使更多用于text类型的控件。
  • 问题3:如何解决文本过多,在textview中实现自动换行的问题?
  • 问题3解决方案:在子控件下添加以下代码
android:ellipsize  = "none"
android :maxLines="100"
scrollHorizontally = "false"  
inputType = "textMultLine"
  • 顺便补充:
android:ellipsize = "end"    省略号在结尾
android:ellipsize = "start"   省略号在开头
android:ellipsize = "middle"     省略号在中间
android:ellipsize = "marquee"  跑马灯
android:ellipsize = "none" 没有省略
android:singleline = "true" 限制一行

其他(感悟、思考等)

没学会可视化设计之前自己手打了几百行xml代码,好郁闷,感觉自己浪费了好多时间= =

参考资料

おすすめ

転載: www.cnblogs.com/lengchong/p/11754629.html