狐好きぷろぐらまー

狐好きプログラマー見習いのブログです。

【Dart】小数の桁数を指定して文字列表示する方法【toStringAsFixed()】

こんばんは。 pregum_foxです。

タイトル通りです。

今回の記事はすごい短いですが、よく忘れるのでメモ代わりに書いておきます。

C#では 123.333.ToString("F1"); みたいなことをDartでする時、分からなかったので調べました。

Dart SDKは2.4.1で確認しています。

コードはDartPadに張り付けてCtrl+Enterで実行できます。

結果

Dartでは 123.333.toStringAsFixed(1)でいけます。

String toStringAsFixed(int fractionDigits)のfractionDigitsの値が小数桁数になります。

参考:

api.dartlang.org

似たようなメソッドに
指定した進数で表示するtoRadixString()
指定した指数値で表示するtoStringAsExponential()
指定した精度で表示するtoStringAsPrecision()
があります。

確認用コード

void main() {

  print(3.33.toStringAsFixed(1));

}

toString()のオーバーライドについて

デバッグ時ユーザー定義型のクラスのtoString()をオーバーロードしてデバッグしやすくすることを
C#でやっているので、Dartでもできるのか調べてみたら、C#と同じようにtoString()をオーバーライドしてあげればよいみたいです。

確認用コード

void main() {
  
  var myClass = MyClass(3.3, 2.2);
  print(myClass);

}

class MyClass{
  final num x;
  final num y;
  
  MyClass(this.x, this.y);
  
  @override
  String toString(){
    return 'x : $x, y : $y';
  }
}

// 出力結果
// x : 3.3, y : 2.2

見て頂き、ありがとうございました。

参考サイト

C#初心者がDartとC#のコードを比較してみた【その2】

こんにちは。 pregum_foxです。

今回は前回の続きです。

pregum-fox.hatenablog.jp

残りの分を書いていきたいと思います。

また、JavaやKotlinの方が詳しいという方は以下のサイトをご覧になった方が 良いかと思います。

qiita.com

項目の順番は下記のLanguage tourに則っています。

dart.dev

続きを読む

C#初心者がDartとC#のコードを比較してみた【その1】

こんにちは。 pregum_foxです。

C#初心者である私が、flutterを触ることになったのですが、flutterで開発するには、Dartという言語を使用するため、まずDartという言語について、調べてみました。

注意

こちらの公式ドキュメントを読みながらプログラムを書いて動作を確認していますが、一部DartC#が合っていない所やよろしくない書き方をしている可能性があるのでその場合は、コメント等で指摘していただけると幸いです。

続きを読む

Azure DevOpsを使ってCIを無料でやってみた 【リポジトリ作成~単体テスト自動実行まで】

こんにちは。 pregum_foxです。

今回は、前回の記事で作成したAzure DevOpsのアカウントを使って、Azure Reposに新しくレポジトリを作成し、自動ビルドから単体テストまでできるようにしてみました。

続きを読む

Azure DevOpsを使ってCIを無料でやってみた 【アカウント作成~Azure DevOps登録まで】

こんにちは。 pregum_foxです。

今回はAzure Depopsを使ってCIをやってみたいと思います。

背景としてはここ数日までCIは聞いたことあるけどどうやるかわからない。。。

Jenkins?あの執事のおじさんだよね。

ということぐらいしか知らずCIやってるよという方に憧憬の念を抱いていたので私も話についていける程度には理解しておこうということでいろいろググってみていました。

そうすると、少し前にこちらのサイトこちらのサイトこちらのAdvent Calendar等でAzure Devopsというキーワードが目に入ってきました。

上のサイトを少しのぞいてみるとどうやら

誤解を恐れず乱暴に言うと、ReadmineとGithubとJenkinsが一緒になったツール

だということで、これが無料で利用できるという個人としてはありがたい内容だったので触らないでいるのはもったいないと思い、触ってみました。

続きを読む

【WPF】【MVVM】INotifyCollectionChangedを使ったサンプルを書いてみた

こんにちは。 pregum_foxです。

巷では、.NET Core や .NET Standardが話題になっていますが、相変わらず.NET frameworkを触っています。

今回は、タイトルの通りINotifyCollectionChangedのサンプルを書いてみました。

とはいっても、実質ObservableCollectionをほぼそのまま使っているだけなんですけどね。(汗

とはいっても自分自身いざ書こうとするとド忘れしてググりながら書いていたので

確認がてらサンプルを書いてみました。

ただサンプルを書いてみるだけだと、理解できないと思いコレクションの操作処理のログを画面に表示する機能も追加してみました。

続きを読む

【C#】クラス内の項目の書いていく順番を調べてみた

こんにちは。 pregum_foxです。

結論はこちらです

C#で開発されている方以外でも関係ある事だと思いますが、

皆さんはクラス内のフィールドやプロパティ、コンストラクタなどの項目をどの順番で書いていますか?

私自身、フィールドとそれを使用しているプロパティ、コンストラクタその後はメソッドを順番に書いていています。

しかしイベントや非同期処理が入ってくると、どの順番で使用する少し考えこんでしまうことがあります。

このような感じで考えてしまうことがあるので、最初に順番が決まって入れば、時間が短縮できそうだなと思い、この記事を書いた次第です。

続きを読む