C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#で2つのTimeSpanを加算する方法

C#では、TimeSpan構造体を使って時間間隔(期間)を簡単に扱うことができます。本記事では、2つのTimeSpanオブジェクトをAdd()メソッドを使って加算する方法を、サンプルコードとともにわかりやすく解説します。

1. 2つのTimeSpanを用意する

まず、加算の対象となる2つのTimeSpanを作成します。ここでは、FromMinutes()メソッドを使って、それぞれ1分と2分のTimeSpanを生成しています。

TimeSpan t1 = TimeSpan.FromMinutes(1);
TimeSpan t2 = TimeSpan.FromMinutes(2);

2. Add()メソッドで加算する

2つのTimeSpanを加算するには、Add()メソッドを使用します。このメソッドは、呼び出し元のTimeSpanと引数に渡したTimeSpanの合計を表す、新しいTimeSpanインスタンスを返します。

TimeSpan res = t1.Add(t2);

サンプルコード全体

以下は、上記の手順をまとめた完全なサンプルプログラムです。

using System;
using System.Linq;

public class Demo {
    public static void Main() {
        TimeSpan t1 = TimeSpan.FromMinutes(1);
        TimeSpan t2 = TimeSpan.FromMinutes(2);

        Console.WriteLine("First TimeSpan: " + t1);
        Console.WriteLine("Second TimeSpan: " + t2);

        // 加算処理
        TimeSpan res = t1.Add(t2);
        Console.WriteLine("Resultant TimeSpan: " + res);
    }
}

実行結果

First TimeSpan: 00:01:00
Second TimeSpan: 00:02:00
Resultant TimeSpan: 00:03:00

補足:+演算子でも加算できる

実は、TimeSpan+演算子をオーバーロードしているため、次のようにより簡潔に書くことも可能です。

TimeSpan res = t1 + t2;

どちらの方法でも結果は同じですが、コードの可読性や簡潔さを重視する場合は+演算子を使うのも良い選択です。状況に応じて使い分けましょう。

  1. C++で2つの2進数文字列を加算するプログラムの書き方

    2つの2進数を表す文字列が与えられたとき、それらを加算した結果を求め、その結果を2進数の文字列として返すことを考えます。2進数とは、0か1のいずれかで表現される数値のことです。2進数同士を足し合わせる際には、以下のような2進数特有の加算ルールに従う必要があります。0+0 → 0 0+1 → 1 1+0 → 1 1+1 → 0(繰り上がり1)入力例str1 = {11}, str2 = {1}出力例100入力例str1 = {110}, str2 = {1}出力例111問題を解くためのアプローチ両方の文字列を末尾(最下位桁)から走査する対応する桁の2進数同士を加算する1と1を足した場合は、その桁

  2. Pythonで2つの数値を加算するプログラム:ビット演算による実装方法

    この記事では、2つの数値を加算するという問題に対する解法とアプローチについて詳しく解説します。 問題の概要 2つの大きな数値が与えられ、それらを加算した結果を出力することが求められます。 最も単純なアプローチは、オペランド同士を「+」演算子で結ぶ方法です。また、2つの数値をリストなどのイテラブルに格納し、Python標準ライブラリに用意されている組み込み関数 sum() を利用する方法もあります。 しかし、これらのアプローチでは10進数に対して直接演算を行うため、計算コストが増大するという課題があります。 ビット演算を用いた別のアプローチ そこで次に、数値をビット単位で操作する別のアプローチを