定义一个照片类。属性:名称大小
定义一个相册类。获取保存多个照片对象,获取相册当中的照片对象(获取所有,获取第几张,根据照片名称获取)并显示
头一次帮人答题--自己加油!
using System;
namespace PhotoIndexer
{
public class Photo
{
private string title;
private int size;
public Photo(string title)
{
this.title = title;
}
public Photo(string title,int size)
{
this.title = title;
this.size = size;
}
public string Title
{
get
{
return this.title;
}
set
{
this.title = value;
}
}
public int Size
{
get
{
return this.size;
}
set
{
this.size = value;
}
}
}
public class Album
{
private Photo[] photos;
public Album(int numbr)
{
photos=new Photo[numbr];
}
/// <summary>
/// 根据序号索引
/// </summary>
/// <param name="index">索引</param>
/// <returns></returns>
public Photo this[int index]
{
get
{
return photos[index];
}
set
{
photos[index] = value;
}
}
/// <summary>
/// 根据文件名索引
/// </summary>
/// <param name="title">文件名</param>
/// <returns></returns>
public Photo this[string title]
{
get
{
for (int i = 0; i < photos.Length;i++ )
{
if(photos[i].Title==title)
{
return photos[i];
}
}
Console.WriteLine("此相册没有找到文件名为{0}的照片",title);
return null;
}
}
}
class Program
{
static void Main(string[] args)
{
Photo photo1=new Photo("photo1",15);
Photo zhangsan = new Photo("zhangsan",20);
Photo lisi =new Photo("lisi",60);
Album allphoto = new Album(3);
allphoto[0] = photo1;
allphoto[1] = zhangsan;
allphoto[2] = lisi;
for (int i = 0; i < 3; i++) //获取所有
{
Console.WriteLine("all name that is"+allphoto[i].Title);
}
Console.ReadKey();
Console.WriteLine("the sceond photo is ["+allphoto[1].Title +"] and he's photo size is "+allphoto[1].Size);//获取第几张
Console.ReadKey();
Console.WriteLine("name is lisi's photo is ["+allphoto["lisi"].Title+"] and he's photo size is "+allphoto["lisi"].Size); //根据名字查找
Console.ReadKey();
}
}
}